Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 451172

Summary: subversion.eclass: passes --ignore-externals to "svn info"
Product: Gentoo Linux Reporter: Burcin Erocal <burcin>
Component: EclassesAssignee: Akinori Hattori <hattya>
Status: UNCONFIRMED ---    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Burcin Erocal 2013-01-10 12:06:34 UTC
The comment for the variable ESVN_OPTIONS indicates that it is only used for checkout or update, but it is used for "svn info" as well.

If '--ignore-externals' is in ESVN_OPTIONS, merge fails with

>>> Unpacking source...
Subcommand 'info' doesn't accept option '--ignore-externals'
Type 'svn help info' for usage.
Subcommand 'info' doesn't accept option '--ignore-externals'
Type 'svn help info' for usage.
Subcommand 'info' doesn't accept option '--ignore-externals'
Type 'svn help info' for usage.
Subcommand 'info' doesn't accept option '--ignore-externals'
Type 'svn help info' for usage.
Subcommand 'info' doesn't accept option '--ignore-externals'
Type 'svn help info' for usage.
 * subversion switch start -->


Filtering this option from the arguments of 'svn info' fixes the problem:

diff --git a/eclass/subversion.eclass b/eclass/subversion.eclass
index b280f71..21cd813 100644
--- a/eclass/subversion.eclass
+++ b/eclass/subversion.eclass
@@ -468,7 +468,7 @@ subversion__svn_info() {
        local target="${1}"
        local key="${2}"

-       env LC_ALL=C svn info ${options} --username "${ESVN_USER}" --password "$
{ESVN_PASSWORD}" "${target}" \\
+       env LC_ALL=C svn info ${options/--ignore-externals/} --username "${ESVN_
USER}" --password "${ESVN_PASSWORD}" "${target}" \\
                | grep -i "^${key}" \\
                | cut -d" " -f2-
 }