Checkout Tools
  • last updated 4 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Follow-up on r1819037: Update Perl test expectations over ra_local.

* subversion/bindings/swig/perl/native/t/3client.t

(dirent tests): ra_local now also returns -1 for directory sizes.

Perl bindings: run test in the C locale.

[in subversion/bindings/swig/perl]

* native/t/1repos.t: Run test in the C locale as we check for localized

messages.

Perl bindings: fix a test when running a debug build.

[in subversion/bindings/swig/perl]

* native/t/3client.t: In a debug build, the svn_error_t returned from a

function may be the top of a chain of svn_error_t's (all with message

"traced call") with the original svn_error_t at the bottom.

Also check for the correct apr_err value (SVN_ERR_CANCELLED).

Perl bindings: document cancel callbacks and add some tests.

[in subversion/bindings/swig/perl/native]

* Client.pm: Move POD paragraphs about cancel calbacks into their own

chapter so that we can refer to them from other PODs.

Also fix the cancel arguments in an example.

* Repos.pm: Document cancel callbacks for dump_fs() and dump_fs2().

* t/1repos.t, t/3client.t: Add some tests for cancel callbacks.

  1. … 2 more files in changeset.
Remove an explicit END handler that performs a cleanup that is already

handled by the standard tempdir() support. As END handlers are run in LIFO

order this block was executed before the RA session was closed, thereby

reporting an unneeded test cleanup failure on Windows.

* subversion/bindings/swig/perl/native/t/6ra.t

(END): Remove block.

Fix some typos.

* CHANGES:

* contrib/cgi/mirror_dir_through_svn.cgi:

* contrib/client-side/emacs/psvn.el:

* contrib/client-side/svn2cl/svn2cl.xsl:

* contrib/hook-scripts/remove-zombie-locks.py:

* contrib/hook-scripts/syntax-check.sh:

* contrib/server-side/svnstsw/configure.ac:

* notes/assurance.txt:

* notes/fs-improvements.txt:

* notes/knobs:

* notes/merge-tracking/func-spec.html:

* notes/merge-tracking/summit-survey.html:

* notes/wc-ng/design:

* notes/wc-ng/locking:

* notes/wc-ng/nodes:

* subversion/bindings/ctypes-python/csvn/core/__init__.py:

* subversion/bindings/ctypes-python/examples/example.py:

* subversion/bindings/javahl/src/org/apache/subversion/javahl/ConflictResult.java:

* subversion/bindings/javahl/src/org/apache/subversion/javahl/ISVNClient.java:

* subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNClient.java:

* subversion/bindings/javahl/src/org/apache/subversion/javahl/SVNRepos.java:

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/ConflictResult.java:

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/PropertyData.java:

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNAdmin.java:

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClient.java:

* subversion/bindings/javahl/src/org/tigris/subversion/javahl/SVNClientInterface.java:

* subversion/bindings/javahl/tests/org/apache/subversion/javahl/BasicTests.java:

* subversion/bindings/javahl/tests/org/tigris/subversion/javahl/BasicTests.java:

* subversion/bindings/swig/include/proxy_apr.swg:

* subversion/bindings/swig/perl/native/Client.pm:

* subversion/bindings/swig/perl/native/t/3client.t:

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c:

* subversion/include/private/svn_diff_tree.h:

* subversion/include/private/svn_io_private.h:

* subversion/include/private/svn_ra_svn_private.h:

* subversion/include/private/svn_string_private.h:

* subversion/include/svn_io.h:

* subversion/include/svn_iter.h:

* subversion/include/svn_props.h:

* subversion/libsvn_client/copy_foreign.c:

* subversion/libsvn_client/diff.c:

* subversion/libsvn_client/merge.c:

* subversion/libsvn_delta/xdelta.c:

* subversion/libsvn_diff/diff4.c:

* subversion/libsvn_diff/util.c:

* subversion/libsvn_fs/editor.c:

* subversion/libsvn_fs_fs/index.c:

* subversion/libsvn_fs_fs/temp_serializer.c:

* subversion/libsvn_fs_fs/temp_serializer.h:

* subversion/libsvn_fs_fs/transaction.c:

* subversion/libsvn_fs_fs/tree.c:

* subversion/libsvn_fs_x/fs.h:

* subversion/libsvn_fs_x/index.c:

* subversion/libsvn_fs_x/reps.c:

* subversion/libsvn_fs_x/temp_serializer.c:

* subversion/libsvn_fs_x/temp_serializer.h:

* subversion/libsvn_fs_x/transaction.c:

* subversion/libsvn_fs_x/tree.c:

* subversion/libsvn_ra_serf/README:

* subversion/libsvn_ra_svn/protocol:

* subversion/libsvn_repos/dump.c:

* subversion/libsvn_repos/hooks.c:

* subversion/libsvn_repos/load-fs-vtable.c:

* subversion/libsvn_subr/dirent_uri.c:

* subversion/libsvn_subr/io.c:

* subversion/libsvn_subr/opt.c:

* subversion/libsvn_subr/string.c:

* subversion/libsvn_subr/subst.c:

* subversion/libsvn_wc/entries.c:

* subversion/libsvn_wc/externals.c:

* subversion/libsvn_wc/lock.c:

* subversion/libsvn_wc/update_editor.c:

* subversion/svn/file-merge.c:

* subversion/svn/status-cmd.c:

* subversion/svnlook/svnlook.c:

* subversion/svnrdump/load_editor.c:

* subversion/svnserve/svnserve.c:

* subversion/tests/cmdline/commit_tests.py:

* subversion/tests/cmdline/diff_tests.py:

* subversion/tests/cmdline/merge_reintegrate_tests.py:

* subversion/tests/cmdline/merge_tests.py:

* subversion/tests/cmdline/revert_tests.py:

* subversion/tests/cmdline/svnauthz_tests.py:

* subversion/tests/cmdline/svntest/factory.py:

* subversion/tests/cmdline/svntest/main.py:

* subversion/tests/libsvn_repos/repos-test.c:

* subversion/tests/libsvn_subr/string-test.c:

* subversion/tests/libsvn_subr/utf-test.c:

* subversion/tests/libsvn_wc/db-test.c:

* subversion/tests/svn_test_main.c:

* tools/dev/trails.py: Fix some typos.

Patch by: Veres Lajos <vlajos{_AT_}gmail.com>

(I removed some changes that were wrong or can't be made due to API breakage)

  1. … 90 more files in changeset.
Make svn_client_log5() callable from the Perl bindings.

* subversion/bindings/swig/svn_client.i:

Make the rule for "apr_array_header_t *REVISION_RANGE_LIST" visible

from Perl, too.

* subversion/bindings/swig/include/svn_containers.swg:

Add an in typemap for "apr_array_header_t *REVISION_RANGE_LIST".

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c,

subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h:

Add the corresponding conversion function

svn_swig_pl_array_to_apr_array_revision_range() and its helper

convert_pl_revision_range(). The latter needs a modified

svn_swig_pl_set_revision() that doesn't croak() it it can't convert

its value parameter.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c,

subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h:

Add a boolean parameter croak_on_error to svn_swig_pl_set_revision()

(croak_on_error=TRUE gives the old behaviour). Return NULL if

croak_on_error is FALSE and value can't be converted.

* subversion/bindings/swig/include/svn_types.swg:

Use svn_swig_pl_set_revision() with croak_on_error=TRUE in

the in typemap for svn_opt_revision_t.

* subversion/bindings/swig/perl/native/Client.pm:

Add log5 to the list of functions wrapped.

* subversion/bindings/swig/perl/native/Core.pm:

Add class magic and documentation for svn_opt_revision_range_t.

Add documentation for svn_opt_revision_t.

* subversion/bindings/swig/perl/native/t/3client.t:

Add tests for SVN::Client->log5() with different forms of

the revision_ranges parameter.

  1. … 7 more files in changeset.
Add SWIG Perl support for svn_client_log3 and svn_client_log4.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c

(svn_swig_pl_thunk_log_entry_receiver): New.

* subversion/bindings/swig/include/svn_types.swg:

Add the Perl typemap for

(svn_log_entry_receiver_t receiver, void *receiver_baton).

Since we now have typemaps for Perl, Python and Ruby, consolidate

them using the callback_typemap() macro. While we're at it,

do the same for the

(svn_log_message_receiver_t receiver, void *receiver_baton)

typemaps.

* subversion/bindings/swig/svn_client.i

Drop three typemaps. The first two are obviously bogus as the

types don't match, and the third is redundant as it's also in

svn_containers.swg.

* subversion/bindings/swig/include/svn_containers.swg

Add Perl typemaps for PROPHASH and changed_paths2.

Apply them for Perl (i.e. drop the restriction on Python or Ruby).

Similar to Ruby, add a variant STRINGLIST_MAY_BE_NULL of

STRINGLIST_MAY and apply it to the apr_array_header_t* revprops

parameter of svn_client_log3 and others. All functions using

this parameter explicitly allow the value to be NULL

(meaning "retrieve all revprops").

* subversion/bindings/swig/perl/native/Core.pm

Add class magic to use Swig types _p_svn_log_changed_path2_t

and _p_svn_log_entry_t and documents their methods.

Add properly namespaced aliases for the values

of enum svn_tristate_t.

* subversion/bindings/swig/perl/native/t/3client.t

(test_log_message_receiver): New, code factored surrounding test.

Run the existing test for $client->log also for $client->log2.

Add similar tests for $client->log3 and $client->log4

especially exercise all getter methods of _p_svn_log_entry_t.

Add a test for $client->log3 with a parameter targets

that is a list of a URL and relative paths (instead of

a single URL).

Patch by: Roderich Schupp <roderich.schupp{_AT_}gmail.com>

  1. … 6 more files in changeset.
swig-pl: Add tests for using a _p_svn_opt_revision_t directly.

* subversion/bindings/swig/perl/native/t/3lient.t

(log2): Add tests for log2 that compares the log output between

a more perlish method of specificying the rev with a manually

created _p_svn_opt_revision_t.

Patch by: Roderich Schupp <roderich.schupp{_AT_}gmail.com>

me

(I took Roderich's patch and moved it to 3client.t and created the

_p_svn_opt_revision_t values directly rather than via

parse_externals_description3())

swig-pl: Add a specific rev and peg-rev to the parse_externals_description3() test.

* subversion/bindings/swig/perl/native/t/9wc.t:

(external_desc): Adjust the second external to have a rev and peg-rev.

(parse_externals_description3): Adjust tests for the second external to handle

looking for the rev and peg-rev.

Patch by: Roderich Schupp <roderich.schupp{_AT_}gmail.com>

me

(I took a portion of Roderich's patch and applied it and added a explicit rev)

Fix the typemap for svn_opt_revision_t. Followup to r1443811.

r1443811 moved the guts of the typemap into a function, but didn't account for

accepting a _p_svn_opt_revision_t object from Perl and the need to change

the pointer.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c

(svn_swig_pl_set_revision): Take a svn_opt_revision_t **rev instead of

just a svn_opt_revision_t *rev.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h

(svn_swig_pl_set_revision): Update declaration to match changed function.

* subversion/bindings/swig/include/svn_types.swg

(svn_opt_revision_t): Update call to svn_swig_pl_set_revision().

* subversion/bindings/swig/perl/native/t/9wc.t

Enable the kind tests that were failing due to the problem with the typemap.

  1. … 3 more files in changeset.
Fix the new SVN::Wc::parse_externals_description3() tests for swig-pl.

* subversion/bindings/swig/perl/native/t/9wc.t:

Convert the tests to using is instead of ok when looking for a value and

isa_ok when looking for a class. Fix the type for the revision and

peg_revision fields since they are pointers. Fix the symbol for accessing

the svn_opt_revision_t enum values. Disable the kind tests on the

svn_opt_revision_t values (accessing this is bugged right now).

Follow up to r1443783: Add tests for svn_wc_parse_externals_description3() to

swig-pl.

* subversion/bindings/swig/perl/native/t/9wc.t: Add file.

* subversion/bindings/swig/perl/native/t/6ra.t

Assume that the uninitialized filesize is SVN_INVALID_FILESIZE.

swig-pl: Add support and tests for mkdir2, mkdir3, and mkdir4.

This will actually probably make all of the commit functions added in 1.7 with

commit callbacks work, but I haven't specifically tested them and they may have

other issues. Those tests will be forthcoming in a future commit.

* subversion/bindings/swig/include/svn_types.swg

(svn_commit_callback2_t): Add typemaps for both the callback function and

baton tuple used in the RA/Repos and the Client library.

* subversion/bindings/swig/perl/native/t/3client.t

(mkdir2, mkdir3, mkdir4): Add tests for these functions.

(update): Adjust the mkdir ahead of the update test to avoid conflict.

* subversion/bindings/swig/perl/native/Core.pm

(svn_commit_info_t): Add package for and documentation.

* subversion/bindings/swig/perl/native/Client.pm

(@_all_fns): Add mkdir4.

(mkdir): Adjust documentation to reference mkdir2.

(mkdir2,mkdir3): Add documentation.

(mkdir4): Steal the original mkdir documentation and adjust it to apply.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c

subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h

(svn_swig_pl_thunk_commit_callback2): New thunk.

  1. … 5 more files in changeset.
swig-pl: Add tests and documentation for add2(), add3(), and add4().

* subversion/bindings/swig/perl/native/t/3client.t

(add2, add3, add4): Add tests for.

* subversion/bindings/swig/perl/native/Client.pm

(add): Adjust to reference add2().

(add2): Add documentation that references add3().

(add4): Add documentation, mostly by taking over the old add() docs.

  1. … 1 more file in changeset.
swig-pl: Add docs and tests for checkout2 and checkout3.

* subversion/bindings/swig/perl/native/t/3client.t

(checkout2, checkout3): Add tests for.

* subversion/bindings/swig/perl/native/Client.pm

(checkout): Make docs reference checkout2().

(checkout2): Add documentation that referencecs checkout3().

(checkout3): Add documentation; mostly by taking over the old checkout() docs.

  1. … 1 more file in changeset.
Allow swig-pl bindings to use update2, update3, update4.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c

(convert_svn_revnum_t): New private function to convert revnum to an iv.

(svn_swig_pl_revnums_to_list): New function to convert array of revnums to

perl array.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h

(svn_swig_pl_revnums_to_list): New function prototype.

* subversion/bindings/swig/include/svn_containers.swg

(apr_array_header_t **result_revs): New typemap for SWIGPERL.

* subversion/bindings/swig/perl/native/Client.pm

(@_all_fns): Add update4 to list of functions to import.

(update): Convert documentation to refer to update2.

(update2): Add documentation that refers to update3.

(update3): Add documentation that refers to update4.

(update4): Add documentation.

* subversion/bindings/swig/perl/native/t/3client.t

(update2,update3,update4): Add tests for.

  1. … 4 more files in changeset.
Add status4 to swig-pl.

* subversion/bindings/swig/svn_wc.i

(svn_wc_status_func3_t): Provide perl callback typemap.

* subversion/bindings/swig/perl/native/t/3client.t

(status4): Add tests for this function.

* subversion/bindings/swig/perl/native/Client.pm

(@_all_fns): Add status4 to the list of imported functions.

(status3): Adjust documentation to just reference status4.

(status4): Add documentation for status4.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c

subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h

(svn_swig_pl_status_func3): Add thunk function.

  1. … 4 more files in changeset.
swig-pl: Add tests for ood_last_cmt_author field of svn_wc_status2_t.

* swig/perl/native/t/3client.t

(status2, status3): Add test.

Add support for status3 function to swig-pl. Work towards resolving issue #2646

* subversion/bindings/swig/perl/native/Core.pm

(SVN::Depth::unknown, SVN::Depth::exclude, SVN::Depth::empty, SVN::Depth::files,

SVN::Depth::immediates, SVN::Depth::infinity): Add.

* subversion/bindings/swig/perl/native/Client.pm

(status2): Update status2 documentation to just reference status3.

(status3): Add.

* subversion/bindings/swig/perl/native/t/3client.t

(status3): Add tests for status3.

  1. … 2 more files in changeset.
Adjust swig-pl tests to have Test::Count markers and add a make target to

update the counts. Resolves issue #4236

* subversion/bindings/swig/perl/native/t/0use.t

subversion/bindings/swig/perl/native/t/1repos.t

subversion/bindings/swig/perl/native/t/2fs.t

subversion/bindings/swig/perl/native/t/3client.t

subversion/bindings/swig/perl/native/t/4pool.t

subversion/bindings/swig/perl/native/t/5delta.t

subversion/bindings/swig/perl/native/t/5delta-compat.t

subversion/bindings/swig/perl/native/t/6ra.t

subversion/bindings/swig/perl/native/t/7editor.t

subversion/bindings/swig/perl/native/t/8lock.t

Add '# TEST' markers.

* subversion/bindings/swig/perl/native/Makefile.PL.in

(update_test_counts): Add target.

  1. … 1 more file in changeset.
Add support for status2 function to Perl bindings. Partial work towards issue #2646.

* subversion/bindings/swig/svn_wc.i

(svn_wc_status_func2_t): Provide Perl callback typemap.

* subversion/bindings/swig/perl/native/t/3client.t

(status): Add tests for all fields of svn_wc_status_t.

Change the test names not to include the expected output the test suite

will print that for us anyway.

(status2): Add tests for this function.

* subversion/bindings/swig/perl/native/Wc.pm

(svn_wc_status2_t): Add documentation for.

(svn_wc_status_t): Adjust documentation to just refer to svn_wc_status2_t.

(SVN::Wc::Status): Move the package for this above the copyright statement.

* subversion/bindings/swig/perl/native/Client.pm

(status): Adjust documentation to just refer to status2.

(status2): Add documentation for.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c

(svn_swig_pl_status_func2): Add function.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h

(svn_swig_pl_status_func2): Add function

  1. … 5 more files in changeset.
Follow-up to r1308299:

* subversion/bindings/swig/perl/native/t/3client.t: Don't try to use getpwuid()

on Windows because it is not implemented there. (If somebody knows a better

way of doing this, like catching the error and retrying, please help).

* subversion/bindings/swig/perl/native/t/3client.t: Try getwpuid() before

getlogin() because the former gives the expected result even if tests

are run after su(1). Should resolve spurious failures on the OpenBSD

buildbot.

Suggested by: philip

* subversion/bindings/swig/perl/native/t/3client.t

Simple test: Does the other string format help here

to fix the test?

* subversion/bindings/swig/perl/native/t/3client.t

A simple attempt to fix the remaining test failure of the perl

bindings on Windows.

I'm not sure if this is the right fix, but making the tests pass

allows using the result on the buildbot.

* subversion/bindings/swig/perl/native/t/3client.t

Make sure the number of tests on Windows and !Windows match the declared

number of tests.

* subversion/bindings/swig/perl/native/t/3client.t

Implement a simple pre-revprop-change hook for Windows in an attempt to fix

one more perl test.

* subversion/bindings/swig/perl/native/t/3client.t

Convert more paths to our internal style before using them in the tests.