Markus Schiltknecht:
As another, minor point, IMO the second is also easier to read and
understand. A good (but admittedly deprecated) example might be:
http://venge.net/net.venge.monotone
Looks quite confusing to me, where as:
http://venge.net/branch/net.venge.monotone
Makes the thing easier to understand. Especially for starters, I think.
Timothy Brownawell:
There needs to be a clear separation between the db path and any
parameters. http://host/path/to/app/followed/by/parameters can work for
web apps because all processing of the URL happens on the server, which
already knows do discard /path/to/app when looking for parameters. We
can't do that, because the netsync client also needs to know the
parameters.
Have it look like
http://venge.net/branch?net.venge.monotone
and the parsing on client side should be fine. To stay with the widely
known URL scheme, a '&' character would be needed for the addition of
further parameters. As this would be a problem for CLI use, just
encapsulate the URL in quotation marks. BASH and (T)CSH work fine with
this, I just tested that. Try on your konsole if
echo "http://www.xyz.org?abc&efg=1234"
is working, while
echo "http://www.xyz.org?abc!efg"
should result in error.
I think the approach of only using slashes in the path of an URL is
mostly used to obscur the structure of a web application. It makes it
not very easy for the user to tell at which point there is code envolved
(servlets, etc) or where there is a relative filesystem path, or
whatever other resource you can guess of. But I am straying from the point.
If I correctly understood the recent discussion, my example above would
imply the use of 'exclude' and 'include' parameters rather than using
special characters. Anyway, the resulting URL would therefore be much
longer to type, but as the reasoning for 'beginners' has already come
up, a longer and also more verbose URL would be much better to
understand. There would be less irritation ("Okay, I just want to do
xyz, but how? Let's try if [....] works. Hmm, doesn't") and the scheme
would be easier to learn, because known practices (HTTP, ...) could be
applied.
Last week I had serious doubts in my senses, when some java RMI stuff I
coded just wasn't getting to work. I tried a lot of examples, copied
them 100% and followed each step accurately, but it didn't work. The
reason was, the URL for the java.rmi.server.codebase was missing a
trailing slash. Nowhere in any article I read was a single clue on this
necessity. The enlightenment came late at night while reading some FAQ
article which had been stuffed in the rearmost corner of the Sun
website. So much for my story of beginners trouble with URLs. Please
just don't let it happen with monotone ;-)
I'm almost sure I forgot something to write down here, but the text is
already sufficiently vast.
Happy Easter!
Philipp
_______________________________________________
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel