Return-Path: X-Original-To: apmail-cordova-dev-archive@www.apache.org Delivered-To: apmail-cordova-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 87B2E10F4B for ; Thu, 13 Mar 2014 15:25:55 +0000 (UTC) Received: (qmail 62449 invoked by uid 500); 13 Mar 2014 15:25:54 -0000 Delivered-To: apmail-cordova-dev-archive@cordova.apache.org Received: (qmail 62295 invoked by uid 500); 13 Mar 2014 15:25:53 -0000 Mailing-List: contact dev-help@cordova.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cordova.apache.org Delivered-To: mailing list dev@cordova.apache.org Received: (qmail 62135 invoked by uid 99); 13 Mar 2014 15:25:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Mar 2014 15:25:50 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of agrieve@google.com designates 209.85.192.175 as permitted sender) Received: from [209.85.192.175] (HELO mail-pd0-f175.google.com) (209.85.192.175) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Mar 2014 15:25:46 +0000 Received: by mail-pd0-f175.google.com with SMTP id x10so1209232pdj.6 for ; Thu, 13 Mar 2014 08:25:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:from:date:message-id:subject:to:content-type; bh=qRte/yisFojo+n39PESG7rcFQNg6H05ZZqae/j+7DGQ=; b=Nz+NHto3PEl83UAXZEWw3fzgph71WynHo32p7TYW5pKoFo5BbReH22j6bJdNsbdtaI dJNp9q4eIfOr/hyHYB+ME8DIdEZh+fxjDYR3xxzDPedgsSx9f9SsCVpvY96MdyBIhKZz IRYUW6jNX/+dHGKoPOS+Hav4yN1BfzVW2zf6YViz/fShHlKSRlnaXVOFzFiGKQYvfVTC kJTQGuzSiD2wqVGNDu4ZfZpww++gmT8CE/HgBIIc/4K+JIn/Q/78JDOYosDbd5EKF/1N Kuxvsrg8AnFb9hkilmp4ifHRgMpiVBLW+NMDIDgrx5WG2SCTxOCvcoO6nkFJMHpNc3gr 6w+Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:sender:from:date:message-id:subject:to:content-type; bh=qRte/yisFojo+n39PESG7rcFQNg6H05ZZqae/j+7DGQ=; b=PgttT0RUCOry/H0e/Y6g9UvFZpuBVrzY1sDAvtu3j+6HvYJc+4oReUt920tAmQLm91 uRffAKMinAjBLxlXFZyUqYPGKvWZWK2L5ZJQsthp39T3/1F1hHBGTqOfrTfZpGQngfKD SzfjPLOuZr364PKM7893KY6/JPmO/t8SpxYZk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:from:date:message-id:subject :to:content-type; bh=qRte/yisFojo+n39PESG7rcFQNg6H05ZZqae/j+7DGQ=; b=GZ230Zu9jxY/qFqO7PDToWTOGnD5/jiIWFok8xuTnpqeuvTiFdGW3CL5Ew8n9LcQz1 nJ4TM5GDI2rejk7j4b8R5AKy4sT4tgJppfWDTmmBrARzaGamr4kvWMl9+rZogOclMD8w eSad4JxKu9OMR2jYbRIYJzQkI+ApPabpAcnO4S02RwyP7OQMroyJwmzf3IfDg0fNEsX5 KYTle2NSViiq6z4vJ8/AQXkug1+cg92+28gbxLAk894ScQEaBazFQybulD7sAfwFOEhD 7XIt2ZneO1vFCbErGquzR5cRej9xwbIvKBJlBJ0ZUnUynLSeMr8iqEYcU6L64E5B5A8I 1uFw== X-Gm-Message-State: ALoCoQkWoSmmJ4xH+bAjnzkRBgq47eUeBvEqhU5Je2L+my4mkJj1nDfLLvrRCabwaS/kWcFdT/7mcvsaAP1j3aXYH3NgN5I5jDetp2YlZvIOUVuzF8JYZEIxJH3cIfNc10mcHWTTKXeeLmj1matvY+4t0Pw2SZ0mlZsdcRL++Hb+VUOPzLxpMF8X2bkW/kgc6hVeJSDbCgIfgGf8cLhRu7P+uYQ98yLiMQ== X-Received: by 10.68.250.3 with SMTP id yy3mr3120522pbc.56.1394724325642; Thu, 13 Mar 2014 08:25:25 -0700 (PDT) MIME-Version: 1.0 Sender: agrieve@google.com Received: by 10.68.127.133 with HTTP; Thu, 13 Mar 2014 08:25:05 -0700 (PDT) From: Andrew Grieve Date: Thu, 13 Mar 2014 11:25:05 -0400 X-Google-Sender-Auth: Wsdc8V4A8PXHInXX1jzk9STXwrs Message-ID: Subject: Consolidating the Distribution of Platforms & Plugins To: dev Content-Type: multipart/alternative; boundary=047d7b6721b0fd6d5104f47e8f7b X-Virus-Checked: Checked by ClamAV on apache.org --047d7b6721b0fd6d5104f47e8f7b Content-Type: text/plain; charset=UTF-8 Right now, CLI downloads & caches platforms & plugins using two different mechanisms, with totally independent code paths. plugman uses the request library, with proxy settings in .plugman/config. It downloads the tars directly from registry.cordova.io. It does not cache them. CLI uses the request library as well, with proxy settings from .npmrc. It downloads tars directly from our git server's archive endpoint. It caches them in ~/.cordova. I'd like to propose that we unify them. Specifically: 1. Store platforms on registry.cordova.io - This would allow CLI to easily see what versions of platforms are available, and be able to choose between them. - This (I'm sure), INFRA would be much happier about than our current fetch-from-git approach 2. Unify CLI & Plugman's downloading logic - Use the same code-path for both. - Have them use the same caching logic. 3. Use npm's cache logic instead of our own: - Just type npm help cache to see what it does - Would allow for: "cordova cache clean" I would *not* want to lose our support for --searchpath, as I think it's really handy. I don't see a problem with this though. This would also enable CLI to answer queries like "what platform versions are available", and make it trivial to do "install cordova-android@3.0.0" This isn't something I have time to work on in the near future, but wanted to see if everyone would be onboard with the change. I'll end up just filing bugs for the changes if it sounds good... but if anyone else wants to work on it... :) --047d7b6721b0fd6d5104f47e8f7b--