You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Max Bowsher <ma...@ukf.net> on 2007/10/06 03:11:38 UTC

check-swig-pl broken on trunk?

I'm seeing failures in check-swig-pl:

../../../../../subversion/bindings/swig/perl/native/t/3client..........ok
22/118
#   Failed test 'Commit returns a _p_svn_client_commit_info isa
_p_svn_client_commit_info_t'
../../../../../subversion/bindings/swig/perl/native/t/3client..........NOK
28#   in ../../../../../subversion/bindings/swig/perl/native/t/3client.t
at line 159.
#     Commit returns a _p_svn_client_commit_info isn't defined
Can't call method "revision" on an undefined value at
../../../../../subversion/bindings/swig/perl/native/t/3client.t line 162.
# cleanup
# Looks like you planned 118 tests but only ran 28.
# Looks like you failed 1 test of 28 run.
# Looks like your test died just after 28.
../../../../../subversion/bindings/swig/perl/native/t/3client..........dubious
        Test returned status 255 (wstat 65280, 0xff00)
DIED. FAILED tests 28-118
        Failed 91/118 tests, 22.88% okay


Re: [PATCH] svn_client_commit[ 23] broken on trunk

Posted by John Peacock <jo...@havurah-software.org>.
Karl Fogel wrote:
> +1 here, and I think SVN_DEPTH_INFINITY_OR_FILES() is the right way to
> go.  Sorry for forgetting to update this in r26241.

Not a problem.  Committed in 27302.

John

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: [PATCH] svn_client_commit[ 23] broken on trunk

Posted by Karl Fogel <kf...@red-bean.com>.
John Peacock <jo...@havurah-software.org> writes:
> I am resending this with a new subject line, because I don't think it was
> obvious enough before.  Even though the breakage showed up in the
> Perl bindings tests, it actually affects any code that uses any of
> the svn_client_commit calls except for *_commit4.

+1 here, and I think SVN_DEPTH_INFINITY_OR_FILES() is the right way to
go.  Sorry for forgetting to update this in r26241.

-Karl

> [[[
> New depth argument for svn_client_commit4 wasn't promoted to
> svn_client_commit3, thus breaking all older commit API calls.
>
> * subversion/libsvn_client/commit.c
>   (svn_client_commit3): synthesize depth argument from old recurse argument
> ]]]
>
> Index: subversion/libsvn_client/commit.c
> ===================================================================
> --- subversion/libsvn_client/commit.c   (revision 27297)
> +++ subversion/libsvn_client/commit.c   (working copy)
> @@ -1770,7 +1770,9 @@
>                     svn_client_ctx_t *ctx,
>                     apr_pool_t *pool)
>  {
> -  return svn_client_commit4(commit_info_p, targets, recurse, keep_locks,
> +  svn_depth_t depth = SVN_DEPTH_INFINITY_OR_FILES(recurse);
> +
> +  return svn_client_commit4(commit_info_p, targets, depth, keep_locks,
>                              FALSE, NULL, ctx, pool);
>  }

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

[PATCH] svn_client_commit[ 23] broken on trunk (was Re: check-swig-pl broken on trunk?)

Posted by John Peacock <jo...@havurah-software.org>.
I am resending this with a new subject line, because I don't think it was
obvious enough before.  Even though the breakage showed up in the Perl bindings
tests, it actually affects any code that uses any of the svn_client_commit calls
 except for *_commit4.

If I can get a +1 from a full committer, I will apply this to trunk.

John

John Peacock wrote:
>> ------------------------------------------------------------------------
>> r26241 | kfogel | 2007-08-22 03:01:57 -0400 (Wed, 22 Aug 2007) | 25 lines
>>  
>> Issue #2882: make 'commit --depth=foo' work.

I've figured out what was wrong; the above patch changed the API for
svn_client_commit4, but didn't update svn_client_commit3 to match (since
*_commit3 is implemented by calling *_commit4).  Since there are no core tests
to exercise the historical commit calls, this went unnoticed for two months.  In
this case, the Perl bindings were merely the "canary in the coal mine" since
there was nothing that changed them.  They just happened to be using an old API
call, which no longer worked.

The only thing I'm not sure of is whether SVN_DEPTH_INFINITY_OR_FILES or
SVN_DEPTH_INFINITY_OR_IMMEDIATES is the appropriate match for the old
non-recursive options.  I have to say that I have no idea based on the
[unhelpful to me] help text in svn/main.c for the obsolete non-recursive option.

John

[[[
New depth argument for svn_client_commit4 wasn't promoted to
svn_client_commit3, thus breaking all older commit API calls.

* subversion/libsvn_client/commit.c
  (svn_client_commit3): synthesize depth argument from old recurse argument
]]]

Index: subversion/libsvn_client/commit.c
===================================================================
--- subversion/libsvn_client/commit.c   (revision 27297)
+++ subversion/libsvn_client/commit.c   (working copy)
@@ -1770,7 +1770,9 @@
                    svn_client_ctx_t *ctx,
                    apr_pool_t *pool)
 {
-  return svn_client_commit4(commit_info_p, targets, recurse, keep_locks,
+  svn_depth_t depth = SVN_DEPTH_INFINITY_OR_FILES(recurse);
+
+  return svn_client_commit4(commit_info_p, targets, depth, keep_locks,
                             FALSE, NULL, ctx, pool);
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: check-swig-pl broken on trunk?

Posted by David Summers <da...@summersoft.fay.ar.us>.
Thanks!

That fixed the RPM build problem I was seeing with the PERL bindings 
testing.

Will use this patch until it (or subsequent ones) make it in to the repo.

    - David Summers

On Sun, 21 Oct 2007, John Peacock wrote:

> John Peacock wrote:
>>> ------------------------------------------------------------------------
>>> r26241 | kfogel | 2007-08-22 03:01:57 -0400 (Wed, 22 Aug 2007) | 25 lines
>>>
>>> Issue #2882: make 'commit --depth=foo' work.
>
> I've figured out what was wrong; the above patch changed the API for
> svn_client_commit4, but didn't update svn_client_commit3 to match (since
> *_commit3 is implemented by calling *_commit4).  Since there are no core tests
> to exercise the historical commit calls, this went unnoticed for two months.  In
> this case, the Perl bindings were merely the "canary in the coal mine" since
> there was nothing that changed them.  They just happened to be using an old API
> call, which no longer worked.
>
> The only thing I'm not sure of is whether SVN_DEPTH_INFINITY_OR_FILES or
> SVN_DEPTH_INFINITY_OR_IMMEDIATES is the appropriate match for the old
> non-recursive options.  I have to say that I have no idea based on the
> [unhelpful to me] help text in svn/main.c for the obsolete non-recursive option.
>
> John
>
> [[[
> New depth argument for svn_client_commit4 wasn't promoted to
> svn_client_commit3, thus breaking all older commit API calls.
>
> * subversion/libsvn_client/commit.c
>  (svn_client_commit3): synthesize depth argument from old recurse argument
> ]]]
>
> Index: subversion/libsvn_client/commit.c
> ===================================================================
> --- subversion/libsvn_client/commit.c   (revision 27297)
> +++ subversion/libsvn_client/commit.c   (working copy)
> @@ -1770,7 +1770,9 @@
>                    svn_client_ctx_t *ctx,
>                    apr_pool_t *pool)
> {
> -  return svn_client_commit4(commit_info_p, targets, recurse, keep_locks,
> +  svn_depth_t depth = SVN_DEPTH_INFINITY_OR_FILES(recurse);
> +
> +  return svn_client_commit4(commit_info_p, targets, depth, keep_locks,
>                             FALSE, NULL, ctx, pool);
> }
>
>

David Wayne Summers        "Linux: Because reboots are for hardware upgrades!"
david@summersoft.fay.ar.us PGP Key: http://summersoft.fay.ar.us/~david/pgp.txt
PGP Key fingerprint =  0B44 B118 85CC F4EC 7021  1ED4 1516 5B78 E320 2001

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: check-swig-pl broken on trunk?

Posted by John Peacock <jo...@havurah-software.org>.
John Peacock wrote:
>> ------------------------------------------------------------------------
>> r26241 | kfogel | 2007-08-22 03:01:57 -0400 (Wed, 22 Aug 2007) | 25 lines
>>  
>> Issue #2882: make 'commit --depth=foo' work.

I've figured out what was wrong; the above patch changed the API for
svn_client_commit4, but didn't update svn_client_commit3 to match (since
*_commit3 is implemented by calling *_commit4).  Since there are no core tests
to exercise the historical commit calls, this went unnoticed for two months.  In
this case, the Perl bindings were merely the "canary in the coal mine" since
there was nothing that changed them.  They just happened to be using an old API
call, which no longer worked.

The only thing I'm not sure of is whether SVN_DEPTH_INFINITY_OR_FILES or
SVN_DEPTH_INFINITY_OR_IMMEDIATES is the appropriate match for the old
non-recursive options.  I have to say that I have no idea based on the
[unhelpful to me] help text in svn/main.c for the obsolete non-recursive option.

John

[[[
New depth argument for svn_client_commit4 wasn't promoted to
svn_client_commit3, thus breaking all older commit API calls.

* subversion/libsvn_client/commit.c
  (svn_client_commit3): synthesize depth argument from old recurse argument
]]]

Index: subversion/libsvn_client/commit.c
===================================================================
--- subversion/libsvn_client/commit.c   (revision 27297)
+++ subversion/libsvn_client/commit.c   (working copy)
@@ -1770,7 +1770,9 @@
                    svn_client_ctx_t *ctx,
                    apr_pool_t *pool)
 {
-  return svn_client_commit4(commit_info_p, targets, recurse, keep_locks,
+  svn_depth_t depth = SVN_DEPTH_INFINITY_OR_FILES(recurse);
+
+  return svn_client_commit4(commit_info_p, targets, depth, keep_locks,
                             FALSE, NULL, ctx, pool);
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: check-swig-pl broken on trunk?

Posted by John Peacock <jo...@havurah-software.org>.
John Peacock wrote:
> I'll get this running today, so that by tonight I hope to be able to report
> where the failures started...

I was distracted slightly by trying to get Xen installed on my desktop 
(so I could run the test suite in a VM without Subversion installed). 
Turns out I need a lot more RAM to run Xen and even one additionaly 
instance... ;-)

In any case, I finally got a binary search working and discovered that 
it was this patch that broke the Perl bindings:

> ------------------------------------------------------------------------
> r26241 | kfogel | 2007-08-22 03:01:57 -0400 (Wed, 22 Aug 2007) | 25 lines
>  
> Issue #2882: make 'commit --depth=foo' work.
> 
> * subversion/include/svn_client.h, subversion/libsvn_client/commit.c
>   (svn_client_commit4): Change recurse parameter to depth.
> 
> * subversion/libsvn_client/client.h
>   (svn_client__harvest_committables): Take depth instead of nonrecursive.
> 
> * subversion/libsvn_client/commit_util.c
>   (svn_client__harvest_committables): Take depth instead of nonrecursive.
>   (harvest_committables): Same, and remove a longstanding TODO with a
>     satisfying "*thwack*!".
>   (svn_client__get_copy_committables): Pass svn_depth_infinity,
>     not nonrecursive=FALSE, to harvest_committables.
> 
> * subversion/svn/commit-cmd.c
>   (svn_cl__commit): Pass opt_state->depth directly.
> 
> * subversion/tests/cmdline/depth_tests.py
>   (commit_propmods_with_depth_empty): New test.
>   (test_list): Run it.
> 
> * subversion/tests/cmdline/commit_tests.py
>   (commit_nonrecursive): Adjust to expect the new behavior.

I'll try and take a look this weekend at exactly which chunk caused it 
to break (I'm guessing the first)...

John

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: check-swig-pl broken on trunk?

Posted by John Peacock <jo...@havurah-software.org>.
David Summers wrote:
> 
> I'm seeing this as well, on RHEL5 on trunk for the last week or so
> (27208 as of today).  I can comment out the make check-swig-pl and the
> rest of the RPM compiles and builds fine.
> 
> John Peacock indicated he would be working on it.....any progress?
> (not being pushy, just curious).

It's slow going, mostly because the swig stuff is right at the limit of my
knowledge.  I think the best thing I can provide right now is to perform a
binary search to try and determine where swig-pl started failing (sadly it
appears the buildbots aren't testing swig).  Happily, it appears I can use this:

	http://search.cpan.org/~coke/App-SVNBinarySearch-v0.1.0/

to make my life considerably easier.

I'll get this running today, so that by tonight I hope to be able to report
where the failures started...

John

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: check-swig-pl broken on trunk?

Posted by David Summers <da...@summersoft.fay.ar.us>.
I'm seeing this as well, on RHEL5 on trunk for the last week or so (27208 
as of today).  I can comment out the make check-swig-pl and the rest of 
the RPM compiles and builds fine.

John Peacock indicated he would be working on it.....any progress?
(not being pushy, just curious).

I'd be glad to try out any patches anyone might have.

    - Thanks!

On Sat, 6 Oct 2007, Max Bowsher wrote:

> I'm seeing failures in check-swig-pl:
>
> ../../../../../subversion/bindings/swig/perl/native/t/3client..........ok
> 22/118
> #   Failed test 'Commit returns a _p_svn_client_commit_info isa
> _p_svn_client_commit_info_t'
> ../../../../../subversion/bindings/swig/perl/native/t/3client..........NOK
> 28#   in ../../../../../subversion/bindings/swig/perl/native/t/3client.t
> at line 159.
> #     Commit returns a _p_svn_client_commit_info isn't defined
> Can't call method "revision" on an undefined value at
> ../../../../../subversion/bindings/swig/perl/native/t/3client.t line 162.
> # cleanup
> # Looks like you planned 118 tests but only ran 28.
> # Looks like you failed 1 test of 28 run.
> # Looks like your test died just after 28.
> ../../../../../subversion/bindings/swig/perl/native/t/3client..........dubious
>        Test returned status 255 (wstat 65280, 0xff00)
> DIED. FAILED tests 28-118
>        Failed 91/118 tests, 22.88% okay
>
>

David Wayne Summers        "Linux: Because reboots are for hardware upgrades!"
david@summersoft.fay.ar.us PGP Key: http://summersoft.fay.ar.us/~david/pgp.txt
PGP Key fingerprint =  0B44 B118 85CC F4EC 7021  1ED4 1516 5B78 E320 2001

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: check-swig-pl broken on trunk?

Posted by John Peacock <jo...@havurah-software.org>.
Max Bowsher wrote:
> I'm seeing failures in check-swig-pl:
> 
> ../../../../../subversion/bindings/swig/perl/native/t/3client..........ok
> 22/118
> #   Failed test 'Commit returns a _p_svn_client_commit_info isa
> _p_svn_client_commit_info_t'
> ../../../../../subversion/bindings/swig/perl/native/t/3client..........NOK
> 28#   in ../../../../../subversion/bindings/swig/perl/native/t/3client.t
> at line 159.

Yup, I see that too.  I'll see if I can fix that RSN.  FIWI, I'm slowly working
through the perl-bindings-improvement branch changes that Nik Clayton and I
started working on.  I've got a database to recover for my old job, then I'm
going to spend some serious time trying to get that branch ready to merge with
trunk (i.e. before v1.5 branches).  Priority #1 is to get the branch passing all
tests (including the one you noted) and only a distant second trying to get my
"autogenerate POD from Doxygen" patch in a presentable state...

John

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org