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 C52F2114CC for ; Tue, 8 Apr 2014 17:32:55 +0000 (UTC) Received: (qmail 8991 invoked by uid 500); 8 Apr 2014 17:32:55 -0000 Delivered-To: apmail-cordova-dev-archive@cordova.apache.org Received: (qmail 8959 invoked by uid 500); 8 Apr 2014 17:32:54 -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 8939 invoked by uid 99); 8 Apr 2014 17:32:53 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Apr 2014 17:32:53 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of agrieve@google.com designates 209.85.214.169 as permitted sender) Received: from [209.85.214.169] (HELO mail-ob0-f169.google.com) (209.85.214.169) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Apr 2014 17:32:48 +0000 Received: by mail-ob0-f169.google.com with SMTP id va2so1385037obc.14 for ; Tue, 08 Apr 2014 10:32:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:content-type; bh=m5la6g5fdxm6iVJSkqiZwG3TH5MOFMBVZ/JgetprOrI=; b=hJcV68Nt2USrqdQeIqqsnCwpRutGI7EPKyuVxSxkpGhIFS8Okvjp4/l0mXx9CQ9tiw QPtCdSRhVTlUn4WMognYG2gDWZRdo/gNCL7TsZZCPChs4X0RhTfD51sEdpew52CT/zx4 5nOhCI5BqVerXZy9B0ofD/JzfLFoPVrpwXVhmtNuf0o8tvtDdyw1Uwok0M0brULmvXKV PyCLbm5M8vSXFQMiVA6oncb6GMiHi25ytpR7e3eArpamwwo1arQFHT0/2ySFKeO6vaBP KjQSQt3KpxwmmZBOSp3hD5c+GfKX7mz+Kx6BpoEWXu859jbG7qb/34m7mZx9t+1vchNc IHJg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:content-type; bh=m5la6g5fdxm6iVJSkqiZwG3TH5MOFMBVZ/JgetprOrI=; b=UGk3qemUTyGHQpURAAL65/vvsJQUO2EnGWOCU23LI5JmVbMDl7qDsO2NpFlEVjqZz7 oYp771WLft5fBvTajl7L1rY93IUEQQIaaUURNEAq0T12V8AwtfT3gBRAxXNl1kzf2NkT wyMr1hRMcyno3Et1iAihRr3GguzX8+usDFJ1Y= 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:in-reply-to:references:from :date:message-id:subject:to:content-type; bh=m5la6g5fdxm6iVJSkqiZwG3TH5MOFMBVZ/JgetprOrI=; b=chwg94ALvyuhtrUWuVod1SZVp9hG6Pcki2u96lZttsUOor+rnygjUB35k/keO7AaKA b3jnBjSikf8X+ZJ26qbduqFVFiia9eZ7+KPbyjuk8+CJ7nntvbxmT2iqa/BrOw6ROwKP Nz/Q2smmpU7zq1NBbF5jylYBIycP2V4+4opkj0AuGqPPb/pykB8o25bIZwNaM9YBbVNp Hp5jQ6hKrBX+etCvQNAtt6mvoaXy0/VT2C5gm5NEIbglcSheRl3wSnfoow+uS7wGqtCl TemEyQ5XuBh063+ZuvWyfDm2qIqhtHTNNG53AJ3dFwQRRtzUdcXX1AHsG6c9HKVakyRR gvvQ== X-Gm-Message-State: ALoCoQlk944gCK88LroS0lK5XaitZEcQtaYTOwukAjgwDcEAs5NFeALoinAqG9dTNeDhCuNhwtLCdHUJzlfXKS4Yfh4o9qukYlG6oa3d3P0q8V1vOLJ0VAd4yxVYTt3GH7ndfUYQJWcXABVJpQJhgr1Ub79qnskQVCvnLyprY7+ijS1W232UdkRk81BqPky0UTsSVrxkTfVIHAcdnXsvyWh9Y8f59z+nRA== X-Received: by 10.182.85.193 with SMTP id j1mr4404015obz.52.1396978345800; Tue, 08 Apr 2014 10:32:25 -0700 (PDT) MIME-Version: 1.0 Sender: agrieve@google.com Received: by 10.182.97.39 with HTTP; Tue, 8 Apr 2014 10:32:05 -0700 (PDT) In-Reply-To: References: <2D5891D1-1CC4-4295-BD90-60DDAC99FFF8@gmail.com> From: Andrew Grieve Date: Tue, 8 Apr 2014 09:32:05 -0800 X-Google-Sender-Auth: lKuA5eDyUXRMX8XKVFb8cdqXAso Message-ID: Subject: Re: Suggestions for a problem To: dev Content-Type: multipart/alternative; boundary=089e01229a120f969404f68b5ea8 X-Virus-Checked: Checked by ClamAV on apache.org --089e01229a120f969404f68b5ea8 Content-Type: text/plain; charset=UTF-8 On Tue, Apr 8, 2014 at 3:30 AM, Gorkem Ercan wrote: > I think a tool can just go through all tagged version of the CLI's > platforms.js and create the version map. I guess this effectively makes CLI > versions the Cordova version. > That's the way I think of it right now as well > > I was looking at the phonegap announcement[1], which got me thinking, I > think independent releases may create complications beyond the problems > like the one I had. For instance take a moment and try to imagine how one > would need to write the same announcement for an independent release. > > By the way, I keep hearing that independent platform releases has not > happened yet but since iOS has a 3.4.1 release while all other platforms > are 3.4.0 and CLI is getting ready for a release that picks up iOS 3.4.1 > what else is missing for it to happen? > I think if we get this right, we'd be able to release iOS 3.4.1 *without* having to release a new version of CLI. Just like you don't need to update your version of npm when a new version of cordova-cli comes out. > > [1] https://twitter.com/PhoneGapBuild/status/453271589803405313 > > -- > Gorkem > > > > On Mon, Apr 7, 2014 at 7:24 PM, Michal Mocny wrote: > > > On Mon, Apr 7, 2014 at 7:56 PM, Shazron wrote: > > > > > Looks like you will have to generate this yourself for now. But correct > > me > > > if I'm wrong, if the CLI is at version X.Y.Z, wouldn't the platform > > > versions be at least X.Y.Z themselves? At least for the main platforms > > > > > > > I don't think thats what the proposal was, but as Joe says, this hasn't > > happened yet and so is still up in the air. > > > > Strictly speaking, if we chose to version everything with semver, the > > version numbers would diverge over time. The specific x.y.z of one > > artifact would be meaningless when compared to other artifacts, but in > > exchange potentially more useful when compared to other versions of the > > same artifact. > > > > Implicitly, each release happens on a date, and CLI releases on a given > > date depend on the latest releases of each platform. So, if you have any > > single artifact, you can get the release date, then the corresponding CLI > > release, and finally use that to map backwards to specific semver > versions > > of all platforms. > > > > Personally, though, I'm not sure that we are using Semver to good effect > at > > all, and its just hurting us. I'd suggest we consider switching to > > versioning by date (aka the Ubuntu / Chromium / etc model). > > > > > > > (android, ios, bb) this would be true I suppose, at least until 3.5.0 > > (not > > > sure when we are diverging). > > > > > > Since the CLI is tied to certain platform versions, I don't see why the > > map > > > can't be auto generated. > > > > > > > > > > > > > > > On Mon, Apr 7, 2014 at 4:44 PM, Gorkem Ercan > > > wrote: > > > > > > > Would package.json carry the historical data? At the moment, my plan > is > > > to > > > > have a json file that maps CLI versions to platform version but for > > every > > > > version > 3.0.0. It would be great if such a file is updated as part > of > > > the > > > > release of CLI though. > > > > -- > > > > Gorkem > > > > > > > > > > > > On Mon, Apr 7, 2014 at 5:07 PM, Brian LeRoux wrote: > > > > > > > > > Moving to independent platform releases doesn't change things other > > > than > > > > a > > > > > mostly arbitrary number we use for issue tracking. This is the way > it > > > > works > > > > > today: > > > > > > > > > > CLI@X.X.X > > > > > '- cordova@X.X.X > > > > > |-ios@X.X.X > > > > > '-android@X.X.X > > > > > > > > > > This is how it would work in the new world order: > > > > > > > > > > CLI@X.X.X > > > > > |- ios@X.X.X > > > > > '-android@X.X.X > > > > > > > > > > This means other tool that depends on the version locked > convenience > > of > > > > the > > > > > Cordova release basically will want to track whatever we do with > the > > > CLI > > > > > instead. Convienantly we will having this in the Cordova > package.json > > > so, > > > > > hypothetically, this is super easy. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Tue, Apr 8, 2014 at 10:24 AM, Marcel Kinard > > > > > wrote: > > > > > > > > > > > The way I would summarize this is that enterprises need a way to > > > > recreate > > > > > > a specific environment. This includes our platforms, plugins, > > > tooling, > > > > > and > > > > > > dependencies. Many enterprises do not desire to live on head, > > instead > > > > > they > > > > > > want to live at a known reproductable state. Before 3.0, this was > > > > pretty > > > > > > straightforward. After 3.0, and additionally potentially > releasing > > > > > > platforms separately, our definition of "a Cordova version" has > > > > basically > > > > > > fallen apart (separate timing for plugins and tools, > > > non-shrinkwrapped > > > > > npm > > > > > > dependencies, etc) > > > > > > > > > > > > Perhaps one way to solve this would be a "Cordova version" > > identifier > > > > > that > > > > > > is a map to the individual versions of all the components, > similar > > to > > > > how > > > > > > cordova-cli/platforms.js has a version property for each > platform, > > > but > > > > > > include tools and even plugins. How often would it make sense to > > > update > > > > > > that version-map and bump the Cordova version? There are probably > > > > > arguments > > > > > > for both a cadence schedule as well as > > anytime-any-component-changes. > > > > > > > > > > > > On Apr 7, 2014, at 5:00 PM, Gorkem Ercan > > > > > wrote: > > > > > > > > > > > > > Hi, > > > > > > > With the independent platforms releases I have started to run > > into > > > a > > > > > > > problem with my Eclipse tools that I am looking for some > > > suggestions. > > > > > > > > > > > > > > In the past, Cordova X.Y.Z meant all platforms would be tagged > > and > > > > > > released > > > > > > > with X.Y.Z. so if Eclipse tools needed to download Cordova > > version > > > > > X.Y.Z, > > > > > > > it could just do so by using the X.Y.Z git tag. Now that > > platforms > > > > can > > > > > do > > > > > > > independent releases the X.Y.Z tag for may not exist for a > > release > > > > for > > > > > a > > > > > > > platform. So I actually need a way to determine what platform > > > > versions > > > > > go > > > > > > > together. CLI actually captures that information on > platforms.js > > > for > > > > > the > > > > > > > release but this is not enough for Eclipse tools as it does not > > > > capture > > > > > > the > > > > > > > data for older releases and Eclipse tools can be download and > use > > > > older > > > > > > > versions. > > > > > > > > > > > > > > Is there a place where I can extract this sort of platform > > version > > > > > > > information? > > > > > > > Also in the past, plugins could define engine compatibility as > > > below > > > > > > > > > > > > > > How does plugman act with the independent releases now? > > > > > > > -- > > > > > > > Gorkem > > > > > > > > > > > > > > > > > > > > > > > > > > > --089e01229a120f969404f68b5ea8--