You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by prabhugnanasundar <pr...@collab.net> on 2010/11/01 11:49:35 UTC

[PATCH] Indentation error in swig binding

Hi,

I am using Debian Lenny. I get swig 1.3.25 with it by default. When I
try to install the swig-py, I get indentation error at core.py file
(line 3178). Since it is an auto generated code from core.i file,
modifying the core.i file solved the problem.
My friend uses swig 1.3.40 which comes with Fedora core 13. In that
version everything works fine even if the indentation is changed at
will. Though in swig  1.3.25 it works iff the indentation is proper.
Hence the problem can be solved by indenting the core.i file.

In r911480 rdonch has fixed an indentation error which he claims has
solved the problem. But he did not mention the swig version. He has
changed the indentation from two to three, but that does not work for
swig 1.3.25. Hope my patch solves everyone's problem. I have the log and
the patch as follows...


[[[
Clear the indentation problem in swig
* subversion/bindings/swig/core.i
  (svn_auth_open): The default indentation of the file is found to be 2.
                   subversion/bindings/swig/python/libsvn/core.py file  
                   generates indentation of 4.

Patch by: Prabhu Gnana Sundar <pr...@collab.net>
]]]


Index: subversion/bindings/swig/core.i
===================================================================
--- subversion/bindings/swig/core.i (revision 1029575)
+++ subversion/bindings/swig/core.i (working copy)
@@ -751,7 +751,7 @@
# references to the providers are gone, they will still be alive,
# keeping the baton valid.
%feature("pythonappend") svn_auth_open %{
-  val.__dict__["_deps"] = list(args[0])
+    val.__dict__["_deps"] = list(args[0])
%}
#endif



Please do get back to me about this.


Regards,
Prabhu 

Re: [PATCH] Indentation error in swig binding

Posted by Philip Martin <ph...@wandisco.com>.
Gavin Beau Baumanis <ga...@thespidernet.com> writes:

> Just checking if there is anything left to do for this thread.

Nothing more to do, thanks!

-- 
Philip

Re: [PATCH] Indentation error in swig binding

Posted by Gavin Beau Baumanis <ga...@thespidernet.com>.
Hi Phillip / Prabhu,

Just checking if there is anything left to do for this thread.
Not being a SVN developer - I can't tell if the initial patch is no longer required if the correct version of dependencies is used, or whether there is still some further discussion required.


Gavin "Beau" Baumanis
E: gavinb@thespidernet.com


On 01/11/2010, at 11:09 PM, Philip Martin wrote:

> prabhugnanasundar <pr...@collab.net> writes:
> 
>> I am using Debian Lenny. I get swig 1.3.25 with it by default. When I
> 
> According to 
> 
>  http://packages.debian.org/search?keywords=swig
> 
> you should get 1.3.36.  That's what I have on my Debian/lenny box.
> 
>> try to install the swig-py, I get indentation error at core.py file
>> (line 3178). Since it is an auto generated code from core.i file,
>> modifying the core.i file solved the problem.
>> My friend uses swig 1.3.40 which comes with Fedora core 13. In that
>> version everything works fine even if the indentation is changed at
>> will. Though in swig  1.3.25 it works iff the indentation is proper.
>> Hence the problem can be solved by indenting the core.i file.
> 
> With 1.3.36 the generated code looks like:
> 
> def svn_auth_open(*args):
>  """
>    svn_auth_open(svn_auth_baton_t auth_baton, apr_array_header_t providers,
>        apr_pool_t pool)
>    """
>  val = apply(_core.svn_auth_open, args)
> 
>  val.__dict__["_deps"] = list(args[0])
> 
>  return val
> 
> With your patch it changes to:
> 
> def svn_auth_open(*args):
>  """
>    svn_auth_open(svn_auth_baton_t auth_baton, apr_array_header_t providers,
>        apr_pool_t pool)
>    """
>  val = apply(_core.svn_auth_open, args)
> 
>    val.__dict__["_deps"] = list(args[0])
> 
>  return val
> 
> which doesn't work.  Running "make check-swig-py" gives:
> 
>  File "/home/pm/sw/subversion/obj/subversion/bindings/swig/python/libsvn/core.py", line 2919
>    val.__dict__["_deps"] = list(args[0])
>    ^
> IndentationError: unexpected indent
> make: *** [check-swig-py] Error 1
> 
> 
>> In r911480 rdonch has fixed an indentation error which he claims has
>> solved the problem. But he did not mention the swig version. He has
>> changed the indentation from two to three, but that does not work for
> 
> From three to two.
> 
>> swig 1.3.25. Hope my patch solves everyone's problem. I have the log and
>> the patch as follows...
>> 
>> 
>> [[[
>> Clear the indentation problem in swig
>> * subversion/bindings/swig/core.i
>>  (svn_auth_open): The default indentation of the file is found to be 2.
>>                   subversion/bindings/swig/python/libsvn/core.py file  
>>                   generates indentation of 4.
>> 
>> Patch by: Prabhu Gnana Sundar <pr...@collab.net>
>> ]]]
>> 
>> 
>> Index: subversion/bindings/swig/core.i
>> ===================================================================
>> --- subversion/bindings/swig/core.i (revision 1029575)
>> +++ subversion/bindings/swig/core.i (working copy)
>> @@ -751,7 +751,7 @@
>> # references to the providers are gone, they will still be alive,
>> # keeping the baton valid.
>> %feature("pythonappend") svn_auth_open %{
>> -  val.__dict__["_deps"] = list(args[0])
>> +    val.__dict__["_deps"] = list(args[0])
>> %}
>> #endif
> 
> -- 
> Philip

Re: [PATCH] Indentation error in swig binding

Posted by Philip Martin <ph...@wandisco.com>.
prabhugnanasundar <pr...@collab.net> writes:

> I am using Debian Lenny. I get swig 1.3.25 with it by default. When I

According to 

  http://packages.debian.org/search?keywords=swig

you should get 1.3.36.  That's what I have on my Debian/lenny box.

> try to install the swig-py, I get indentation error at core.py file
> (line 3178). Since it is an auto generated code from core.i file,
> modifying the core.i file solved the problem.
> My friend uses swig 1.3.40 which comes with Fedora core 13. In that
> version everything works fine even if the indentation is changed at
> will. Though in swig  1.3.25 it works iff the indentation is proper.
> Hence the problem can be solved by indenting the core.i file.

With 1.3.36 the generated code looks like:

def svn_auth_open(*args):
  """
    svn_auth_open(svn_auth_baton_t auth_baton, apr_array_header_t providers,
        apr_pool_t pool)
    """
  val = apply(_core.svn_auth_open, args)
 
  val.__dict__["_deps"] = list(args[0])

  return val

With your patch it changes to:

def svn_auth_open(*args):
  """
    svn_auth_open(svn_auth_baton_t auth_baton, apr_array_header_t providers,
        apr_pool_t pool)
    """
  val = apply(_core.svn_auth_open, args)
 
    val.__dict__["_deps"] = list(args[0])

  return val

which doesn't work.  Running "make check-swig-py" gives:

  File "/home/pm/sw/subversion/obj/subversion/bindings/swig/python/libsvn/core.py", line 2919
    val.__dict__["_deps"] = list(args[0])
    ^
IndentationError: unexpected indent
make: *** [check-swig-py] Error 1


> In r911480 rdonch has fixed an indentation error which he claims has
> solved the problem. But he did not mention the swig version. He has
> changed the indentation from two to three, but that does not work for

Re: [PATCH] Indentation error in swig binding

Posted by Philip Martin <ph...@wandisco.com>.
prabhugnanasundar <pr...@collab.net> writes:

> I am using Debian Lenny. I get swig 1.3.25 with it by default. When I

According to 

  http://packages.debian.org/search?keywords=swig

you should get 1.3.36.  That's what I have on my Debian/lenny box.

> try to install the swig-py, I get indentation error at core.py file
> (line 3178). Since it is an auto generated code from core.i file,
> modifying the core.i file solved the problem.
> My friend uses swig 1.3.40 which comes with Fedora core 13. In that
> version everything works fine even if the indentation is changed at
> will. Though in swig  1.3.25 it works iff the indentation is proper.
> Hence the problem can be solved by indenting the core.i file.

With 1.3.36 the generated code looks like:

def svn_auth_open(*args):
  """
    svn_auth_open(svn_auth_baton_t auth_baton, apr_array_header_t providers,
        apr_pool_t pool)
    """
  val = apply(_core.svn_auth_open, args)
 
  val.__dict__["_deps"] = list(args[0])

  return val

With your patch it changes to:

def svn_auth_open(*args):
  """
    svn_auth_open(svn_auth_baton_t auth_baton, apr_array_header_t providers,
        apr_pool_t pool)
    """
  val = apply(_core.svn_auth_open, args)
 
    val.__dict__["_deps"] = list(args[0])

  return val

which doesn't work.  Running "make check-swig-py" gives:

  File "/home/pm/sw/subversion/obj/subversion/bindings/swig/python/libsvn/core.py", line 2919
    val.__dict__["_deps"] = list(args[0])
    ^
IndentationError: unexpected indent
make: *** [check-swig-py] Error 1


> In r911480 rdonch has fixed an indentation error which he claims has
> solved the problem. But he did not mention the swig version. He has
> changed the indentation from two to three, but that does not work for

>From three to two.

> swig 1.3.25. Hope my patch solves everyone's problem. I have the log and
> the patch as follows...
>
>
> [[[
> Clear the indentation problem in swig
> * subversion/bindings/swig/core.i
>   (svn_auth_open): The default indentation of the file is found to be 2.
>                    subversion/bindings/swig/python/libsvn/core.py file  
>                    generates indentation of 4.
>
> Patch by: Prabhu Gnana Sundar <pr...@collab.net>
> ]]]
>
>
> Index: subversion/bindings/swig/core.i
> ===================================================================
> --- subversion/bindings/swig/core.i (revision 1029575)
> +++ subversion/bindings/swig/core.i (working copy)
> @@ -751,7 +751,7 @@
> # references to the providers are gone, they will still be alive,
> # keeping the baton valid.
> %feature("pythonappend") svn_auth_open %{
> -  val.__dict__["_deps"] = list(args[0])
> +    val.__dict__["_deps"] = list(args[0])
> %}
> #endif

-- 
Philip