Changeset 13058


Ignore:
Timestamp:
11/27/10 11:04:25 (11 years ago)
Author:
Mark Evenson
Message:

Documentation for the URI encoding changes.

Location:
trunk/abcl/doc/design/pathnames
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/doc/design/pathnames/jar-pathnames.markdown

    r12613 r13058  
    44    Mark Evenson
    55    Created:  09 JAN 2010
    6     Modified: 10 APR 2010
     6    Modified: 26 NOV 2010
    77
    88Notes towards an implementation of "jar:" references to be contained
     
    1313
    14141.  Use Common Lisp pathnames to refer to entries in a jar file.
    15 
    1615   
    17162.  Use `'jar:'` schema as documented in [`java.net.JarURLConnection`][jarURLConnection] for
     
    6766------
    6867
    69 As of svn r125??, all the above goals have been implemented and
    70 tested.
     68All the above goals have been implemented and tested.
    7169
    7270
     
    9391
    9492The DEVICE PATHNAME list of enclosing JARs runs from outermost to
    95 innermost.
     93innermost.  The implementaion currently limits this list to have at
     94most two elements.
    9695   
    9796The DIRECTORY component of a JAR PATHNAME should be a list starting
     
    124123### Notes
    125124
    126 1.  `ABSOLUTE-FILE-NAMESTRING` and `RELATIVE-FILE-NAMESTRING` use the
    127 local filesystem conventions, meaning that on Windows this could
    128 contain '\' as the directory separator, while an `ENTRY` always uses '/'
    129 to separate directories within the jar proper.
     1251.  `ABSOLUTE-FILE-NAMESTRING` and `RELATIVE-FILE-NAMESTRING` can use
     126the local filesystem conventions, meaning that on Windows this could
     127contain '\' as the directory separator, which are always normalized to
     128'/'.  An `ENTRY` always uses '/' to separate directories within the
     129jar archive.
    130130
    131131
  • trunk/abcl/doc/design/pathnames/url-pathnames.markdown

    r12613 r13058  
    44    Mark Evenson
    55    Created:  25 MAR 2010
    6     Modified: 11 APR 2010
     6    Modified: 26 NOV 2010
    77
    88Notes towards an implementation of URL references to be contained in
     
    1919----------
    2020
    21 We use the term URL to describe the URL Pathnames, even though RFC3986
    22 notes that its use should be obsolete because in the context of Common
    23 Lisp Pathnames all need a lookup mechanism to be resolved or they
    24 wouldn't be of much use.
     21We use the term URL as shorthand in describing the URL Pathnames, even
     22though the corresponding encoding is more akin to a URI as described
     23in RFC3986. 
     24
    2525
    2626Goals
     
    35353.  Use URL schemes that are understood by the java.net.URL object.
    3636
    37     A file specified by URL
     37    Example of a Pathname specified by URL:
    3838   
    3939        #p"http://example.org/org/armedbear/systems/pgp.asd"
     
    5050not accessible (see "Non-goal 1").
    5151
    52 7.  DIRECTORY for non-wildcards
     527.  DIRECTORY works for non-wildcards.
    5353
    54548.  URL pathname work as a valid argument for OPEN with :DIRECTION :INPUT.
     
    56569.  Enable the loading of ASDF2 systems referenced by a URL pathname.
    5757
    58 10.  The reserved URL characters (`~`, `/`, `?`, etc.) shall be
    59 encoded in the proper manner on construction of the Pathname.
     5810.  Pathnames constructed with the "file" scheme
     59(i.e. #p"file:/this/file") need to be properly URI encoded according
     60to RFC3986 or otherwise will signal FILE-ERROR. 
    6061
    616211.  The "file" scheme will continue to be represented by an
    62 "ordinary" Pathname.
     63"ordinary" Pathname.  Thus, after construction of a URL Pathname with
     64the "file" scheme, the namestring of the resulting PATHNAME will no
     65longer contain the "file:" prefix.
    6366
    646712.  The "jar" scheme will continue to be represented by a jar
     
    6972---------
    7073
    71 1.  We will not implement canonicalization of URL schemas (such as following
    72 "http" redirects).
     741.  We will not implement canonicalization of URL schemas (such as
     75following "http" redirects).
    7376
    74 2.  DIRECTORY working for URL pathnames containing wildcards.
     772.  DIRECTORY will not work for URL pathnames containing wildcards.
    7578
    7679
     
    120123------
    121124
    122 This design is a proposal.
     125This design has been implemented.
     126
     127History
     128-------
     129
     13026 NOV 2010 Changed implemenation to use URI encodings for the "file"
     131  schemes including those nested with the "jar" scheme by like
     132  aka. "jar:file:/location/of/some.jar!/".
Note: See TracChangeset for help on using the changeset viewer.