[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-janitors] #997: uri-path-relative? misunderstands the root
From: |
Chicken Trac |
Subject: |
Re: [Chicken-janitors] #997: uri-path-relative? misunderstands the root path |
Date: |
Thu, 14 Mar 2013 20:38:11 -0000 |
#997: uri-path-relative? misunderstands the root path
-------------------------+--------------------------------------------------
Reporter: andyjpb | Owner: sjamaan
Type: defect | Status: accepted
Priority: major | Milestone: someday
Component: extensions | Version: 4.8.x
Resolution: | Keywords:
-------------------------+--------------------------------------------------
Comment(by sjamaan):
This has been fixed in trunk. Please give it a try.
I didn't really know what to do with the "//foo" case: strictly speaking,
this can't be subject to the scheme-based normalization rules of section
6.2.3 (RFC 3986), because we don't have a scheme.
On the other hand, this egg already makes some hard assumptions about the
type of URI (for example, it assumes the query part *must* be form-
encoded, as key/value pairs) so perhaps this wouldn't be so bad? It would
be breaking with the spec, though.
Because I wasn't sure, I kept the behavior the way it was (ie, (uri-path
(uri-reference "//foo")) returns '() instead of '(/ ""), making it
inconsistent with cases where we do know the scheme).
Perhaps we should be checking that the URI really is a common URI (ie, has
a known scheme listed in default-ports), and failing otherwise? This
would be obnoxious but possible and prevent more errors being made, but
might cause some problems of its own. Gah!
--
Ticket URL: <http://bugs.call-cc.org/ticket/997#comment:2>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.