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

Re: Looks like wrong value for SVN_VER_REVISION in SWIG bindings for Python and Ruby?

From: Hyrum K Wright <hyrum.wright_at_wandisco.com>
Date: Tue, 6 Dec 2011 10:19:42 -0600

On Tue, Dec 6, 2011 at 7:47 AM, Shane Turner <shane.turner_at_newpace.ca>wrote:

> I was just taking a look at the differences between Subversion 1.7.1 and
> 1.7.2 and noticed a couple of diffs that look odd.
>
> In subversion/bindings/swig/python/core.c and
> subversion/bindings/swig/ruby/core.c, the value of SVN_VER_REVISION changed
> from the numeric revision number (previously 1186859) to 0. I think it's
> supposed to be 1207936.
>
> Is this a bug, or intended? Be forewarned that I don't use this aspect of
> Subversion. I just happened to notice.
>
> The code I was examining was from
> http://apache.sunsite.ualberta.ca/subversion/subversion-1.7.2.tar.bz2
>
> I've included the diff below. I've filtered out all of the path
> differences in the comments ("/*@SWIG:..." </*@SWIG:...>).
>
> Shane Turner
>
> diff -rwB -I '.*@SWIG:.*'
> subversion-1.7.4bed3649c532/subversion/bindings/swig/python/core.c
> subversion-1.7/subversion/bindings/swig/python/core.c
> 30985,30986c30985,30986
> < SWIG_Python_SetConstant(d, "SVN_VER_PATCH",SWIG_From_long((long)(1)));
> < SWIG_Python_SetConstant(d, "SVN_VER_MICRO",SWIG_From_long((long)(1)));
> ---
> > SWIG_Python_SetConstant(d, "SVN_VER_PATCH",SWIG_From_long((long)(2)));
> > SWIG_Python_SetConstant(d, "SVN_VER_MICRO",SWIG_From_long((long)(2)));
> 30988c30988
> < SWIG_Python_SetConstant(d, "SVN_VER_TAG",SWIG_FromCharPtr("
> (r1186859)"));
> ---
> > SWIG_Python_SetConstant(d, "SVN_VER_TAG",SWIG_FromCharPtr("
> (r1207936)"));
> 30990,30993c30990,30993
> *< SWIG_Python_SetConstant(d,
> "SVN_VER_REVISION",SWIG_From_long((long)(1186859)));*
> < SWIG_Python_SetConstant(d, "SVN_VER_NUM",SWIG_FromCharPtr("1.7.1"));
> < SWIG_Python_SetConstant(d, "SVN_VER_NUMBER",SWIG_FromCharPtr("1.7.1"));
> < SWIG_Python_SetConstant(d, "SVN_VERSION",SWIG_FromCharPtr("1.7.1
> (r1186859)"));
> ---
> *> SWIG_Python_SetConstant(d,
> "SVN_VER_REVISION",SWIG_From_long((long)(0)));*
> > SWIG_Python_SetConstant(d, "SVN_VER_NUM",SWIG_FromCharPtr("1.7.2"));
> > SWIG_Python_SetConstant(d, "SVN_VER_NUMBER",SWIG_FromCharPtr("1.7.2"));
> > SWIG_Python_SetConstant(d, "SVN_VERSION",SWIG_FromCharPtr("1.7.2
> (r1207936)"));
> diff -rwB -I '.*@SWIG:.*'
> subversion-1.7.4bed3649c532/subversion/bindings/swig/ruby/core.c
> subversion-1.7/subversion/bindings/swig/ruby/core.c
> 37529,37530c37529,37530
> < rb_define_const(mCore, "SVN_VER_PATCH", SWIG_From_int((int)(1)));
> < rb_define_const(mCore, "SVN_VER_MICRO", SWIG_From_int((int)(1)));
> ---
> > rb_define_const(mCore, "SVN_VER_PATCH", SWIG_From_int((int)(2)));
> > rb_define_const(mCore, "SVN_VER_MICRO", SWIG_From_int((int)(2)));
> 37532c37532
> < rb_define_const(mCore, "SVN_VER_TAG", SWIG_FromCharPtr(" (r1186859)"));
> ---
> > rb_define_const(mCore, "SVN_VER_TAG", SWIG_FromCharPtr(" (r1207936)"));
> 37534,37537c37534,37537
> *< rb_define_const(mCore, "SVN_VER_REVISION",
> SWIG_From_int((int)(1186859)));*
> < rb_define_const(mCore, "SVN_VER_NUM", SWIG_FromCharPtr("1.7.1"));
> < rb_define_const(mCore, "SVN_VER_NUMBER", SWIG_FromCharPtr("1.7.1"));
> < rb_define_const(mCore, "SVN_VERSION", SWIG_FromCharPtr("1.7.1
> (r1186859)"));
> ---
> *> rb_define_const(mCore, "SVN_VER_REVISION", SWIG_From_int((int)(0)));*
> > rb_define_const(mCore, "SVN_VER_NUM", SWIG_FromCharPtr("1.7.2"));
> > rb_define_const(mCore, "SVN_VER_NUMBER", SWIG_FromCharPtr("1.7.2"));
> > rb_define_const(mCore, "SVN_VERSION", SWIG_FromCharPtr("1.7.2
> (r1207936)"));
>

Shane,
Thanks for letting us know about this. I'm guessing that these values come
from the standard Subversion header file svn_version.h. When rolling the
tarballs, I checked that the revision number was in there properly in the
separately-generated file, but must confess that I'm not sure what the
actual tarballs contain. Could you check and see if SVN_VER_REVISION is
set appropriately in svn_version.h?

Thanks,
-Hyrum

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com/
Received on 2011-12-06 17:20:14 CET

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