Re: 'svn auth' treats patterns as paths
From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Thu, 3 Jul 2014 13:51:49 +0100
I'll mention a few more suggestions about improvimg the 'svn auth' UI.
Daniel Shahaf wrote on 28 June:
> 'svn auth' URL-escapes and path-canonicalizes the pattern, which breaks some
+1. Makes sense to me, at least as an initial step. If we want a more controlled way to search for (part of) a URL without regard to canonicalization differences, then that's something we could add, but not by blindly treating a general pattern as a URL.
> [1] As an aside, why did it downcase "ASF Committers"? Did svn think those
(I guess the URI parser treated "443> ASF Committers" as the port specifier. Why that should be down-cased I don't know.)
Some more comments and suggestions.
The help says:
With no arguments, list all cached authentication credentials.
If more than one pattern is specified credentials are considered only they
These two sentences in the help are inconsistent:
"If PATTERN is specified, only list credentials with attributes matching one
"If more than one pattern is specified credentials are considered only they
(And there's a missing "if" in that last sentence.)
Suggestions: Rather than an implicit OR or AND relationship, specify patters using the '--search' and '--search-and' options that are used with 'svn log'. The kind of search available is then that an entry matches:
(P1 and P2 [and ...]) or (Q1 and Q2 [and ...]) [or ...]
The corresponding arguments would be:
--search P1 --search-and P2 --search Q1 --search-and Q2
Since we already have this UI syntax for 'svn log' it would seem sensible to re-use it.
The no-arguments form of the command currently means "list everything in the auth cache". For me this produces several pages of not very interesting output. Many of the entries look like these:
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
Sure, it's information that is sometimes useful, but do we really want to reserve the no-arguments command for that? I suggest not. I think it would be better if one had to specify something like "--search=*" or "--list" or "--all" to get a full list.
There are many things one might like to use 'svn auth' command for. We might want to use the no-arguments form, later, to mean something like "show me the authentication in use for the Subversion WC in the current working directory" or "re-authenticate to the repository in the current working directory".
Finally, I'm wondering if "svn authn" as I fear "svn auth" will be confused with "authz" and with "author".
- Julian
|
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.