Return-Path: Delivered-To: apmail-repository-archive@www.apache.org Received: (qmail 84472 invoked from network); 9 Nov 2003 06:39:16 -0000 Received: from daedalus.apache.org (HELO mail.apache.org) (208.185.179.12) by minotaur-2.apache.org with SMTP; 9 Nov 2003 06:39:16 -0000 Received: (qmail 75684 invoked by uid 500); 9 Nov 2003 06:38:54 -0000 Delivered-To: apmail-repository-archive@apache.org Received: (qmail 75633 invoked by uid 500); 9 Nov 2003 06:38:54 -0000 Mailing-List: contact repository-help@apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: repository@apache.org Delivered-To: mailing list repository@apache.org Received: (qmail 75620 invoked from network); 9 Nov 2003 06:38:53 -0000 Received: from unknown (HELO mail.netspace.net.au) (203.10.110.72) by daedalus.apache.org with SMTP; 9 Nov 2003 06:38:53 -0000 Received: from binky (CPE-203-45-8-11.vic.bigpond.net.au [203.45.8.11]) by mail.netspace.net.au (Postfix) with SMTP id 82B1167E82 for ; Sun, 9 Nov 2003 17:39:04 +1100 (EST) Reply-To: From: "Tim Anderson" To: Subject: Comments on URI Syntax Date: Sun, 9 Nov 2003 17:41:48 +1100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.6604 (9.0.2911.0) X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Importance: Normal X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N I have a few comments on the proposed URI Syntax, from http://nagoya.apache.org/wiki/apachewiki.cgi?ASFRepository/URISyntax. Compromise URI http://///artifact-[;].ext For example http://repo.apache.org/org-apache-ant/1.5.1/ant-1.5.1.jar http://repo.apache.org/org-apache-ant/1.5.1/ant-testutil-1.5.1.jar http://repo.apache.org/org-apache-ant/1.5.1/LICENSE.txt 1. This should be written as: http://///artifact[-].ext as the '-' is only required if the version is present. 2. Does '.ext' need to be mandatory? I'm assuming that a project is free to deploy whatever it likes into the repository, not all of which should be forced to have extensions (e.g, Unix shell scripts, README files). 3. is too limiting as it is required to be globally unique, resulting in unwieldy names like: "jakarta-commons-logging" or "org.apache.jakarta.commons.logging" I would prefer to see this split into: / where: . is arbitrary, but globally unique. It could be the domain name, e.g "sun.com", the reverse domain name e.g "org.apache", or simply the name of the organisation, e.g "oracle". . is the project name, unique within the organisation, e.g: "jndi", "ldap", "commons-logging" etc. 4. is too limiting as it groups all artifacts for one project in a single directory. For projects producing large no.s of artifacts, it becomes difficult for users to browse. The httpd project for example produces multiple binaries, for different platforms (see http://www.apache.org/dist/httpd/) The requirement that - is prepended to the artifact name also doesn't support language specific requirements. I would prefer to see this split into: [/][/] where: . is optional and arbitrary, determined by the deployment tool. E.g: "jars", "binaries", "docs" etc. . is optional and arbitrary, determined by the deployment tool. . is determined by the deployment tool, and includes: . the artifact name . the version (optional) . the platform (optional) . the extension (optional) . the type (optional) E.g, "-src", "-bin" etc. This allows the repository to cater for language-specific deployment tools. For java, could be: [-][-][.] E.g: . LICENSE.txt . ant-1.5.1.jar . ant-1.5.1-src.zip For C binaries, could be: --. E.g: . httpd-2.0.43-sparc-sun-solaris2.8.tar.gz In summary, I think the URI should be of the form: http://////[/][/], with the format of determined by the deployment tool. For example: http://repo.apache.org/apache/ant/1.5.4/LICENSE.txt http://repo.apache.org/apache/ant/1.5.4/jars/ant-1.5.4.jar http://repo.apache.org/apache/ant/1.5.4/source/ant-1.5.4-src.zip http://repo.apache.org/apache/httpd/2.0.43/binaries/sparc-sun-solaris2.8/htt pd-2.0.43-sparc-sun-solaris2.8.tar.gz http://repo.mycompany.com/sun/jndi/jars/jndi-1.2.1.jar Regards, Tim