RE: [DISCUSS] Cordova tools release

2016-05-10 Thread Vladimir Kotikov (Akvelon)
+1

Thanks for handling cordova-common release - there is probably not much sense 
in releasing it separately (as I was planning initially) when other components 
also need to be released.

-
Best regards, Vladimir

-Original Message-
From: julio cesar sanchez [mailto:jcesarmob...@gmail.com] 
Sent: Tuesday, May 10, 2016 1:14 AM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] Cordova tools release

+1

El martes, 10 de mayo de 2016, Shazron  escribió:

> +1
>
> On Mon, May 9, 2016 at 12:32 PM, Steven Gill  > wrote:
>
> > Any objections or concerns?
> >
> > Doing a cli, lib, plugman, common and fetch release.
> >
> > -Steve
> >
>


[GitHub] cordova-lib pull request: CB-11200 Bump xcode dependency and updat...

2016-05-10 Thread codecov-io
Github user codecov-io commented on the pull request:

https://github.com/apache/cordova-lib/pull/437#issuecomment-218113832
  
## [Current coverage][cc-pull] is **80.59%**
> Merging [#437][cc-pull] into [master][cc-base-branch] will not change 
coverage

```diff
@@ master   #437   diff @@
==
  Files68 68  
  Lines  5353   5353  
  Methods 851851  
  Messages  0  0  
  Branches   1027   1027  
==
  Hits   4314   4314  
  Misses 1039   1039  
  Partials  0  0  
```



> Powered by [Codecov](https://codecov.io?src=pr). Last updated by 
[6025a5f...7ca35ae][cc-compare]
[cc-base-branch]: 
https://codecov.io/gh/apache/cordova-lib/branch/master?src=pr
[cc-compare]: 
https://codecov.io/gh/apache/cordova-lib/compare/6025a5f23c00284fb3416d8042ff5d738bf03db3...7ca35ae10216c092f6254109e44094c23f44999e
[cc-pull]: https://codecov.io/gh/apache/cordova-lib/pull/437?src=pr


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



RE: Node 6.x and Cordova CLI

2016-05-10 Thread Vladimir Kotikov (Akvelon)
Small update.

Looks like failing jshint in https://github.com/apache/cordova-lib/pull/437 is 
another Node 6.x (In particular npm@3.x) issue. Corresponding bug is filed 
here: https://github.com/npm/npm/issues/10343.

Hopefully this doesn't affect regular users, as the problem only can be seen 
when another cordova dependencies are being linked to cordova-lib. For devs the 
workaround is to run another 'npm install' inside of 'cordova-common' (and 
probably other cordova-* modules) after 'npm install'-ing cordova-lib (see 
https://github.com/apache/cordova-lib/pull/437/commits/122efe3c561dd5965c54dee5cf0a4c9174870b08)

-
Best regards, Vladimir


-Original Message-
From: Steven Gill [mailto:stevengil...@gmail.com] 
Sent: Saturday, May 7, 2016 2:03 AM
To: dev@cordova.apache.org
Subject: RE: Node 6.x and Cordova CLI

Sounds good. I plan on merging fetch PR for the release too.
https://github.com/apache/cordova-lib/pull/407

It is failing on appvoyer but working on my windows machine locally.

I can do discuss release along side tool release if you want. Makes sense to do 
it together On May 6, 2016 3:28 PM, "Vladimir Kotikov (Akvelon)" 

wrote:

> That'd be great!
>
> The PRs are ready: https://github.com/apache/cordova-lib/pull/437 and
> https://github.com/apache/cordova-ios/pull/221
> Although the PR for cordova-lib is still failing w/ Node 6.0, this 
> looks like a setup issue (the failure reason is jshint internals) and 
> I can't reproduce these failures on my machine. Also the tests for 
> cordova-lib itself are passing so it should be fine.
>
> -
> Best regards, Vladimir
>
> -Original Message-
> From: Steven Gill [mailto:stevengil...@gmail.com]
> Sent: Saturday, May 7, 2016 12:19 AM
> To: dev@cordova.apache.org
> Subject: RE: Node 6.x and Cordova CLI
>
> Sweet. Thanks for looking into it! I can start release process for 
> both next week On May 6, 2016 2:13 PM, "Vladimir Kotikov (Akvelon)" < 
> v-vlk...@microsoft.com>
> wrote:
>
> > Hi list
> >
> > FYI, we’ve recently performed a sanity check of Cordova CLI against 
> > newly released Node JS 6.0 (credits to Alex Sorokin) and found some 
> > issues, caused by new Node JS version. The most critical is a 
> > failure of uninstallation of plugins with custom frameworks for iOS 
> > platform - JIRA
> > CB-11200 [1]. The root cause is the bug in node-xcode which is 
> > already fixed [2].
> >
> > In order to resolve the issue I think we'll need to bump node-xcode 
> > version in both cordova-lib and cordova-ios and release these ASAP.
> > Also we'd probably need to update CI configs to include Node 6.x in 
> > test matrix where possible. I'm going to submit a PR shortly.
> >
> > -
> > [1]
> > https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fiss
> > ue 
> > s.apache.org%2fjira%2fbrowse%2fCB-11200&data=01%7c01%7cv-vlkoti%40mi
> > cr
> > osoft.com%7cc34ccb842dac42d6a7ac08d375f4196e%7c72f988bf86f141af91ab2
> > d7 
> > cd011db47%7c1&sdata=AY47SzHGi2reQtjJRbYU%2b%2fNaKi25qdzw%2fIRW291o12
> > E% 3d [2] https://github.com/alunny/node-xcode/pull/86
> >
> > -
> > Best regards, Vladimir
> >
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
> For additional commands, e-mail: dev-h...@cordova.apache.org
>

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org


proposal for new core plugin to control screen orientation

2016-05-10 Thread Homer, Tony
The proposal is to create a new core plugin that enables the user to 
dynamically control the orientation of their app.
This plugin would be based on the W3C screen-orientation spec [1].
This was originally proposed via CB-9528 [2] (which currently has 10 votes and 
16 watchers, indicating strong community interest).


There is an existing community plugin [3] that implements an older version of 
the W3C screen-orientation spec.
The author has graciously agreed to contribute this plugin to Apache Cordova.
The plan is, pending consensus, to update the existing code and then migrate it 
to a new Apache Cordova repo; required preparatory work is underway.

What do you think?  Please provide feedback!

[1] https://www.w3.org/TR/screen-orientation/
[2] https://issues.apache.org/jira/browse/CB-9528
[3] https://github.com/gbenvenuti/cordova-plugin-screen-orientation

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org


[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62704632
  
--- Diff: doc/cordova.txt ---
@@ -43,4 +49,7 @@ Examples
 cordova-cli requirements android
 cordova-cli build android --verbose
 cordova-cli run android
-cordova-cli build android --release -- 
--keystore="..\android.keystore" --storePassword=android --alias=mykey
\ No newline at end of file
+cordova-cli build android --release -- 
--keystore="..\android.keystore" --storePassword=android --alias=mykey
+cordova-cli telemetry on
+cordova-cli telemetry off
+cordova-cli build --no-telemetry
--- End diff --

These examples are not necessarily needed here as they are simple and not 
common scenarios - it will be nice to keep this output as small as it could be.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62704887
  
--- Diff: doc/cordova.txt ---
@@ -23,6 +23,12 @@ Project Commands
 serve .. Run project with a local webserver
 (including prepare)
 
+Telemetry Commands
+telemetry on ... Turn telemetry collection on
--- End diff --

Sounds like telemetry is a "global command" and should go along with create 
& help. All details about telemetry command e.g. privacy notice, on/off should 
not be specified here. The goal of this top level help is to be succinct 
without going into details.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62704961
  
--- Diff: doc/telemetry.txt ---
@@ -0,0 +1,24 @@
+Synopsis
+
+cordova-cli telemetry [STATE]
+
+  STATE: on|off
+
+Turns telemetry collection on or off
+
+on ... Turns telemetry collection on
+off .. Turns telemetry collection off  
+
+Details
+A timed prompt asking the user to opt-in or out is displayed the first 
time cordova is run.
--- End diff --

Can omit "or out"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62705209
  
--- Diff: doc/telemetry.txt ---
@@ -0,0 +1,24 @@
+Synopsis
+
+cordova-cli telemetry [STATE]
+
+  STATE: on|off
+
+Turns telemetry collection on or off
+
+on ... Turns telemetry collection on
+off .. Turns telemetry collection off  
+
+Details
+A timed prompt asking the user to opt-in or out is displayed the first 
time cordova is run.
+It lasts for 30 seconds, after which the user is automatically 
opted-out if he doesn't provide any answer.
+In CI environments, the `CI` environment variable can be set, which 
will prevent the prompt from showing up.
+Telemetry collection can also be turned off on a single command by 
using the `--no-telemetry-flag`.
--- End diff --

I believe you meant `--no-telemetry` flag


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62705505
  
--- Diff: doc/telemetry.txt ---
@@ -0,0 +1,24 @@
+Synopsis
+
+cordova-cli telemetry [STATE]
+
+  STATE: on|off
+
+Turns telemetry collection on or off
+
+on ... Turns telemetry collection on
+off .. Turns telemetry collection off  
+
+Details
+A timed prompt asking the user to opt-in or out is displayed the first 
time cordova is run.
+It lasts for 30 seconds, after which the user is automatically 
opted-out if he doesn't provide any answer.
+In CI environments, the `CI` environment variable can be set, which 
will prevent the prompt from showing up.
+Telemetry collection can also be turned off on a single command by 
using the `--no-telemetry-flag`.
+
+Examples
+cordova-cli telemetry on
+cordova-cli telemetry off
+cordova-cli build --no-telemetry
+
+For details, see our privacy notice: 
https://cordova.apache.org/privacy-notice.html 
+and the proposal: https://github.com/cordova/cordova-discuss/pull/43
--- End diff --

Best not  to reference the pull request here which will get closed and the 
doc itself will eventually get updated. 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62705738
  
--- Diff: spec/cli.spec.js ---
@@ -50,19 +56,34 @@ describe("cordova cli", function () {
 beforeEach(function () {
 });
 
-it("will spit out the version with -v", function () {
-cli(["node", "cordova", "-v"]);
-
expect(console.log.mostRecentCall.args[0]).toMatch(version);
+it("will spit out the version with -v", function (done) {
+cli(["node", "cordova", "-v"]).then(function() {
+
expect(console.log.mostRecentCall.args[0]).toMatch(version);
+done();
+}).fail(function() {
--- End diff --

Can you elaborate why these tests had to be changed and made async?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62707187
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
+} else {
+console.log(EOL + "You have been opted out of telemetry. To 
change this, run: cordova telemetry on");
+// Always track telemetry opt-outs! (whether opted-in or 
opted-out)
+track('telemetry-opt-out', 'via-cli-prompt-choice');
+}
+
+deferred.resolve(optIn); 
+});
+
+return deferred.promise;
+}
+
+function track() {
+insight.track.apply(insight, arguments);
+}
+
+function trackEvent(category, action, label, value) {
+insight.trackEvent({
+category: category,
+action: action,
+label: label,
+value: value
+});
+}
+
+function turnOn() {
+insight.optOut = false;
+}
+
+function turnOff() {
+insight.optOut = true;
+}
+
+/**
+ * Clears telemetry setting
+ * Has the same effect as if user never answered the telemetry prompt
+ * Useful for testing purposes
+ */
+function clear() {
+insight.optOut = undefined;
+}
+
+function isOptedIn() {
+return !insight.optOut;
+}
+
+/**
+ * Has the user already answered the telemetry prompt? (thereby opting in 
or out?)
+ */
+function hasUserOptedInOrOut() {
+return !(insight.optOut === undefined);
--- End diff --

to test for undefined in javascript you have to use typeof - 
[http://stackoverflow.com/questions/3390396/how-to-check-for-undefined-in-javascript](http://stackoverflow.com/questions/3390396/how-to-check-for-undefined-in-javascript)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62708439
  
--- Diff: src/cli.js ---
@@ -235,41 +317,58 @@ function cli(inputArgs) {
 throw new CordovaError(msg);
 }
 
-cordova.raw[cmd].call(null, opts.platforms)
-.then(function (platformChecks) {
+var result = cordova.raw[cmd].call(null, opts.platforms)
+.then(function(platformChecks) {
 
-var someChecksFailed = 
Object.keys(platformChecks).map(function (platformName) {
-events.emit('log', '\nRequirements check results for ' + 
platformName + ':');
-var platformCheck = platformChecks[platformName];
-if (platformCheck instanceof CordovaError) {
-events.emit('warn', 'Check failed for ' + platformName 
+ ' due to ' + platformCheck);
-return true;
-}
-
-var someChecksFailed = false;
-platformCheck.forEach(function (checkItem) {
-var checkSummary = checkItem.name + ': ' +
-(checkItem.installed ? 'installed ' : 
'not installed ') +
-(checkItem.metadata.version || '');
-events.emit('log', checkSummary);
-if (!checkItem.installed) {
-someChecksFailed = true;
-events.emit('warn', checkItem.metadata.reason);
+var someChecksFailed = 
Object.keys(platformChecks).map(function(platformName) {
+events.emit('log', '\nRequirements check results for ' 
+ platformName + ':');
+var platformCheck = platformChecks[platformName];
+if (platformCheck instanceof CordovaError) {
+events.emit('warn', 'Check failed for ' + 
platformName + ' due to ' + platformCheck);
+return true;
 }
+
+var someChecksFailed = false;
+platformCheck.forEach(function(checkItem) {
+var checkSummary = checkItem.name + ': ' +
+(checkItem.installed ? 'installed ' : 'not 
installed ') +
+(checkItem.metadata.version || '');
+events.emit('log', checkSummary);
+if (!checkItem.installed) {
+someChecksFailed = true;
+events.emit('warn', checkItem.metadata.reason);
+}
+});
+
+return someChecksFailed;
+}).some(function(isCheckFailedForPlatform) {
+return isCheckFailedForPlatform;
 });
 
-return someChecksFailed;
-}).some(function (isCheckFailedForPlatform) {
-return isCheckFailedForPlatform;
+if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
 });
-
-if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
-}).done();
--- End diff --

Looks like you end up removing "done()" - does that not cause us to lose 
exceptions? 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62708496
  
--- Diff: src/cli.js ---
@@ -235,41 +317,58 @@ function cli(inputArgs) {
 throw new CordovaError(msg);
 }
 
-cordova.raw[cmd].call(null, opts.platforms)
-.then(function (platformChecks) {
+var result = cordova.raw[cmd].call(null, opts.platforms)
+.then(function(platformChecks) {
 
-var someChecksFailed = 
Object.keys(platformChecks).map(function (platformName) {
-events.emit('log', '\nRequirements check results for ' + 
platformName + ':');
-var platformCheck = platformChecks[platformName];
-if (platformCheck instanceof CordovaError) {
-events.emit('warn', 'Check failed for ' + platformName 
+ ' due to ' + platformCheck);
-return true;
-}
-
-var someChecksFailed = false;
-platformCheck.forEach(function (checkItem) {
-var checkSummary = checkItem.name + ': ' +
-(checkItem.installed ? 'installed ' : 
'not installed ') +
-(checkItem.metadata.version || '');
-events.emit('log', checkSummary);
-if (!checkItem.installed) {
-someChecksFailed = true;
-events.emit('warn', checkItem.metadata.reason);
+var someChecksFailed = 
Object.keys(platformChecks).map(function(platformName) {
+events.emit('log', '\nRequirements check results for ' 
+ platformName + ':');
+var platformCheck = platformChecks[platformName];
+if (platformCheck instanceof CordovaError) {
+events.emit('warn', 'Check failed for ' + 
platformName + ' due to ' + platformCheck);
+return true;
 }
+
+var someChecksFailed = false;
+platformCheck.forEach(function(checkItem) {
+var checkSummary = checkItem.name + ': ' +
+(checkItem.installed ? 'installed ' : 'not 
installed ') +
+(checkItem.metadata.version || '');
+events.emit('log', checkSummary);
+if (!checkItem.installed) {
+someChecksFailed = true;
+events.emit('warn', checkItem.metadata.reason);
+}
+});
+
+return someChecksFailed;
+}).some(function(isCheckFailedForPlatform) {
+return isCheckFailedForPlatform;
 });
 
-return someChecksFailed;
-}).some(function (isCheckFailedForPlatform) {
-return isCheckFailedForPlatform;
+if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
 });
-
-if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
-}).done();
+return result.finally(function() {
+if (shouldCollectTelemetry) {
+telemetry.track(cmd, result.isFulfilled() ? 'successful' : 
'unsuccessful');
+}
+return result;
+});   
 } else if (cmd == 'serve') {
 var port = undashed[1];
-cordova.raw.serve(port).done();
+var result = cordova.raw.serve(port);
+return result.finally(function() {
+if(shouldCollectTelemetry) {
+telemetry.track(cmd, result.isFulfilled() ? 'successful' : 
'unsuccessful');
+}
+});
 } else if (cmd == 'create') {
-create();
+var result = create();
+return result.finally(function() {
+if (shouldCollectTelemetry) {
+telemetry.track(cmd, result.isFulfilled() ? 'successful' : 
'unsuccessful');
+}
+return result;
--- End diff --

why return result? - also, this is not being done consistently.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail

[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62708649
  
--- Diff: src/cli.js ---
@@ -235,41 +317,58 @@ function cli(inputArgs) {
 throw new CordovaError(msg);
 }
 
-cordova.raw[cmd].call(null, opts.platforms)
-.then(function (platformChecks) {
+var result = cordova.raw[cmd].call(null, opts.platforms)
+.then(function(platformChecks) {
 
-var someChecksFailed = 
Object.keys(platformChecks).map(function (platformName) {
-events.emit('log', '\nRequirements check results for ' + 
platformName + ':');
-var platformCheck = platformChecks[platformName];
-if (platformCheck instanceof CordovaError) {
-events.emit('warn', 'Check failed for ' + platformName 
+ ' due to ' + platformCheck);
-return true;
-}
-
-var someChecksFailed = false;
-platformCheck.forEach(function (checkItem) {
-var checkSummary = checkItem.name + ': ' +
-(checkItem.installed ? 'installed ' : 
'not installed ') +
-(checkItem.metadata.version || '');
-events.emit('log', checkSummary);
-if (!checkItem.installed) {
-someChecksFailed = true;
-events.emit('warn', checkItem.metadata.reason);
+var someChecksFailed = 
Object.keys(platformChecks).map(function(platformName) {
+events.emit('log', '\nRequirements check results for ' 
+ platformName + ':');
+var platformCheck = platformChecks[platformName];
+if (platformCheck instanceof CordovaError) {
+events.emit('warn', 'Check failed for ' + 
platformName + ' due to ' + platformCheck);
+return true;
 }
+
+var someChecksFailed = false;
+platformCheck.forEach(function(checkItem) {
+var checkSummary = checkItem.name + ': ' +
+(checkItem.installed ? 'installed ' : 'not 
installed ') +
+(checkItem.metadata.version || '');
+events.emit('log', checkSummary);
+if (!checkItem.installed) {
+someChecksFailed = true;
+events.emit('warn', checkItem.metadata.reason);
+}
+});
+
+return someChecksFailed;
+}).some(function(isCheckFailedForPlatform) {
+return isCheckFailedForPlatform;
 });
 
-return someChecksFailed;
-}).some(function (isCheckFailedForPlatform) {
-return isCheckFailedForPlatform;
+if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
 });
-
-if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
-}).done();
+return result.finally(function() {
+if (shouldCollectTelemetry) {
+telemetry.track(cmd, result.isFulfilled() ? 'successful' : 
'unsuccessful');
+}
+return result;
+});   
 } else if (cmd == 'serve') {
 var port = undashed[1];
-cordova.raw.serve(port).done();
+var result = cordova.raw.serve(port);
+return result.finally(function() {
+if(shouldCollectTelemetry) {
+telemetry.track(cmd, result.isFulfilled() ? 'successful' : 
'unsuccessful');
+}
+});
 } else if (cmd == 'create') {
-create();
+var result = create();
+return result.finally(function() {
+if (shouldCollectTelemetry) {
--- End diff --

Instead of duplicating this code - consider the caller taking the promise 
and calling "finally" and recording telemetry calling "done()"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h

[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62708834
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
--- End diff --

better = improve. Also end with a period.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62709210
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
+} else {
+console.log(EOL + "You have been opted out of telemetry. To 
change this, run: cordova telemetry on");
--- End diff --

End with a period.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62710076
  
--- Diff: src/cli.js ---
@@ -235,41 +317,58 @@ function cli(inputArgs) {
 throw new CordovaError(msg);
 }
 
-cordova.raw[cmd].call(null, opts.platforms)
-.then(function (platformChecks) {
+var result = cordova.raw[cmd].call(null, opts.platforms)
+.then(function(platformChecks) {
 
-var someChecksFailed = 
Object.keys(platformChecks).map(function (platformName) {
-events.emit('log', '\nRequirements check results for ' + 
platformName + ':');
-var platformCheck = platformChecks[platformName];
-if (platformCheck instanceof CordovaError) {
-events.emit('warn', 'Check failed for ' + platformName 
+ ' due to ' + platformCheck);
-return true;
-}
-
-var someChecksFailed = false;
-platformCheck.forEach(function (checkItem) {
-var checkSummary = checkItem.name + ': ' +
-(checkItem.installed ? 'installed ' : 
'not installed ') +
-(checkItem.metadata.version || '');
-events.emit('log', checkSummary);
-if (!checkItem.installed) {
-someChecksFailed = true;
-events.emit('warn', checkItem.metadata.reason);
+var someChecksFailed = 
Object.keys(platformChecks).map(function(platformName) {
+events.emit('log', '\nRequirements check results for ' 
+ platformName + ':');
+var platformCheck = platformChecks[platformName];
+if (platformCheck instanceof CordovaError) {
+events.emit('warn', 'Check failed for ' + 
platformName + ' due to ' + platformCheck);
+return true;
 }
+
+var someChecksFailed = false;
+platformCheck.forEach(function(checkItem) {
+var checkSummary = checkItem.name + ': ' +
+(checkItem.installed ? 'installed ' : 'not 
installed ') +
+(checkItem.metadata.version || '');
+events.emit('log', checkSummary);
+if (!checkItem.installed) {
+someChecksFailed = true;
+events.emit('warn', checkItem.metadata.reason);
+}
+});
+
+return someChecksFailed;
+}).some(function(isCheckFailedForPlatform) {
+return isCheckFailedForPlatform;
 });
 
-return someChecksFailed;
-}).some(function (isCheckFailedForPlatform) {
-return isCheckFailedForPlatform;
+if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
 });
-
-if (someChecksFailed) throw new CordovaError('Some of 
requirements check failed');
-}).done();
+return result.finally(function() {
+if (shouldCollectTelemetry) {
+telemetry.track(cmd, result.isFulfilled() ? 'successful' : 
'unsuccessful');
+}
+return result;
+});   
 } else if (cmd == 'serve') {
 var port = undashed[1];
-cordova.raw.serve(port).done();
+var result = cordova.raw.serve(port);
+return result.finally(function() {
+if(shouldCollectTelemetry) {
+telemetry.track(cmd, result.isFulfilled() ? 'successful' : 
'unsuccessful');
--- End diff --

Looks like "track" itself checks if telemetry should should be collected - 
why should every calling point also check?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-medic pull request: CB-11237: linking cordova-fetch

2016-05-10 Thread riknoll
Github user riknoll commented on the pull request:

https://github.com/apache/cordova-medic/pull/102#issuecomment-218225885
  
@stevengill no worries! Thanks for taking a look!


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-medic pull request: CB-11237: linking cordova-fetch

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-medic/pull/102


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-plugin-camera pull request: Add pull request template

2016-05-10 Thread nikhilkh
GitHub user nikhilkh opened a pull request:

https://github.com/apache/cordova-plugin-camera/pull/213

Add pull request template



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/MSOpenTech/cordova-plugin-camera pr-template

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/cordova-plugin-camera/pull/213.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #213


commit 25ddde2c6ca8f7fe1a9687acaed4019bb5b3dbdd
Author: Nikhil Khandelwal 
Date:   2016-05-10T18:35:48Z

Add pull request template




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



RE: Github issue and PR templates

2016-05-10 Thread Nikhil Khandelwal
I have submitted a PR to add a pull request to cordova-plugin-camera: 
https://github.com/apache/cordova-plugin-camera/pull/213

Please review and provide feedback. I intend to add this to all other repos.

-Nikhil

-Original Message-
From: Dmitry Blotsky [mailto:dblot...@microsoft.com] 
Sent: Thursday, February 18, 2016 6:39 PM
To: dev@cordova.apache.org
Subject: RE: Github issue and PR templates

I like the idea. I suggest starting small and expanding as necessary. Right now 
the two most important pieces of information that I think our PRs could use are:

Did you sign the ICLA? [ ] Yes / [ ] No
Related JIRA: CB-[ ]

Kindly,
Dmitry

-Original Message-
From: Carlos Santana [mailto:csantan...@gmail.com]
Sent: Thursday, February 18, 2016 5:55 PM
To: dev@cordova.apache.org
Subject: Re: Github issue and PR templates

I agree, Running tests as easy as npm install && npm run config && npm test
 :-)


On Thu, Feb 18, 2016 at 4:40 PM Nikhil Khandelwal 
wrote:

> I think for plugins, platform name should be required as part of title 
> of the PR and commit message in addition to JIRA number.
>
> Checklist:
> [ ] Tests that were added or run for a new feature/regressions [ ] 
> Does the new feature broadly apply to multiple platforms?
>
> We probably need to make it easier for contributors to run tests for 
> plugins.
>
> -Nikhil
>
> -Original Message-
> From: Steven Gill [mailto:stevengil...@gmail.com]
> Sent: Wednesday, February 17, 2016 1:42 PM
> To: dev@cordova.apache.org
> Subject: Github issue and PR templates
>
> Cool new feature from github!
> https://github.com/blog/2111-issue-and-pull-request-templates
>
> Since we don't do issues on github, that feature isn't useful to us. 
> But providing PR templates sounds like a good idea. Just need to add a 
> PULL_REQUEST_TEMPLATE.md to the root of our repos.
>
> What type of information would we ask for from PRs?
>
> * Issue number
>
> If it is a plugin
> * which platforms
>
> Thoughts?
>

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org


[GitHub] cordova-paramedic pull request: Choose Target and use it for loggi...

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-paramedic/pull/5#discussion_r62729774
  
--- Diff: lib/ParamedicAppUninstall.js ---
@@ -0,0 +1,66 @@
+var shelljs = require('shelljs');
+var path= require('path');
+var fs  = require("fs");
+var logger  = require('./utils').logger;
+var util= require('./utils').utilities;
+
+function ParamedicAppUninstall(appPath, platform) {
+this.appPath  = appPath;
+this.platform = platform;
+}
+
+ParamedicAppUninstall.prototype.uninstallApp = function(targetObj, app) {
+if(!targetObj || !targetObj.target)
+return;
+
+switch(this.platform) {
+case util.ANDROID:
+this.uninstallAppAndroid(targetObj, app);
+break;
+case util.IOS:
+this.uninstallAppIOS(targetObj, app);
+break;
+case util.WINDOWS:
+this.uninstallAppWindows(targetObj, app);
+break;
+default:
+break;
+}
+}
+
+ParamedicAppUninstall.prototype.uninstallAppAndroid = function(targetObj, 
app) {
+var uninstallCommand = "adb -s " + targetObj.target + " uninstall " + 
app;
+this.executeUninstallCommand(uninstallCommand);
+}
+
+ParamedicAppUninstall.prototype.uninstallAppWindows = function(targetObj, 
app) {
+var platformPath = path.join(this.appPath, "platforms", "windows");
+var packageJSPath = path.join(platformPath, "cordova", "lib", 
"package.js");
+var appDeployPath = path.join("C:", "Program Files (x86)", "Microsoft 
SDKs",
--- End diff --

This is hard-coded - We should at least look at the ProgramFiles 
environment variable and not hardcode to "C:\"

The common way to do this process.env["ProgramFiles(x86)"] || 
process.env["ProgramFiles"] - this will ensure it works on both 32-bit & 64-bit 
systems.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-plugin-camera pull request: Add pull request template

2016-05-10 Thread riknoll
Github user riknoll commented on the pull request:


https://github.com/apache/cordova-plugin-camera/pull/213#issuecomment-218253991
  
Do we need to provide a link for CCLA info just in case? Can we also 
suggest a format for PR titles? Something like:
```
[CB-12345]: Short description
```


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-paramedic pull request: Choose Target and use it for loggi...

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-paramedic/pull/5#discussion_r62730561
  
--- Diff: lib/ParamedicAppUninstall.js ---
@@ -0,0 +1,66 @@
+var shelljs = require('shelljs');
+var path= require('path');
+var fs  = require("fs");
+var logger  = require('./utils').logger;
+var util= require('./utils').utilities;
+
+function ParamedicAppUninstall(appPath, platform) {
+this.appPath  = appPath;
+this.platform = platform;
+}
+
+ParamedicAppUninstall.prototype.uninstallApp = function(targetObj, app) {
+if(!targetObj || !targetObj.target)
+return;
+
+switch(this.platform) {
+case util.ANDROID:
+this.uninstallAppAndroid(targetObj, app);
+break;
+case util.IOS:
+this.uninstallAppIOS(targetObj, app);
+break;
+case util.WINDOWS:
+this.uninstallAppWindows(targetObj, app);
+break;
+default:
+break;
+}
+}
+
+ParamedicAppUninstall.prototype.uninstallAppAndroid = function(targetObj, 
app) {
+var uninstallCommand = "adb -s " + targetObj.target + " uninstall " + 
app;
+this.executeUninstallCommand(uninstallCommand);
+}
+
+ParamedicAppUninstall.prototype.uninstallAppWindows = function(targetObj, 
app) {
+var platformPath = path.join(this.appPath, "platforms", "windows");
+var packageJSPath = path.join(platformPath, "cordova", "lib", 
"package.js");
+var appDeployPath = path.join("C:", "Program Files (x86)", "Microsoft 
SDKs",
+  "Windows Phone", "v8.1", "Tools", "AppDeploy", 
"AppDeployCmd.exe");
+appDeployPath = '"' + appDeployPath + '"';
+
+if (fs.existsSync(packageJSPath)) {
+var packageJS = require(packageJSPath);
+var appId = packageJS.getAppId(platformPath);
+var uninstallCommand = appDeployPath + " /uninstall " + appId + " 
/targetdevice:" + targetObj.target;
+this.executeUninstallCommand(uninstallCommand);
+}
+return;
+}
+
+ParamedicAppUninstall.prototype.uninstallAppIOS = function(targetObj, app) 
{
+   //No activity necessary at this point. App is automatically uninstalled
+}
+
+ParamedicAppUninstall.prototype.executeUninstallCommand = 
function(uninstallCommand) {
+logger.info("cordova-paramedic: Running command: " + uninstallCommand);
+var uninstallResult  = shelljs.exec(uninstallCommand, {silent: true, 
async: false});
+if (uninstallResult.code > 0) {
+logger.error("Failed to uninstall the app" );
+logger.error("Error code: " + uninstallResult.code);
--- End diff --

It will be great to also log the stderr in this case to see the cause of 
the failure.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-paramedic pull request: Choose Target and use it for loggi...

2016-05-10 Thread riknoll
Github user riknoll commented on a diff in the pull request:

https://github.com/apache/cordova-paramedic/pull/5#discussion_r62733203
  
--- Diff: lib/ParamedicTargetChooser.js ---
@@ -0,0 +1,127 @@
+var Q   = require('q');
+var shelljs = require('shelljs');
+var path= require("path-extra");
+var logger  = require('./utils').logger;
+var util= require('./utils').utilities;
+var spawn   = require('child_process').spawn;
+var ParamedicKill   = require('./ParamedicKill');
+
+var ANDROID_RETRY_TIMES = 3;
+var ANDROID_TIME_OUT= 30; //5 Minutes
+
+function ParamedicTargetChooser(appPath, platform) {
+this.appPath  = appPath;
+this.platform = platform;
+}
+
+ParamedicTargetChooser.prototype.chooseTarget = function(emulator) {
+var targetObj = "";
+switch(this.platform) {
+case util.ANDROID:
+targetObj = this.chooseTargetForAndroid(emulator);
+break;
+case util.IOS:
+targetObj = this.chooseTargetForIOS(emulator);
+break;
+case util.WINDOWS:
+targetObj = this.chooseTargetForWindows(emulator);
+break;
+default:
+break;
+}
+return targetObj;
+}
+
+ParamedicTargetChooser.prototype.chooseTargetForAndroid = 
function(emulator) {
+logger.info("cordova-paramedic: Choosing Target for Android");
+var self = this;
+return this.startAnAndroidEmulator().then(function(){
+var obj = {};
+obj.target = self.getRunningDeviceForAndroid();
--- End diff --

Does the emulator ID returned by `startAnAndroidEmulator` not work?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-paramedic pull request: Choose Target and use it for loggi...

2016-05-10 Thread riknoll
Github user riknoll commented on a diff in the pull request:

https://github.com/apache/cordova-paramedic/pull/5#discussion_r62733344
  
--- Diff: lib/ParamedicTargetChooser.js ---
@@ -0,0 +1,127 @@
+var Q   = require('q');
+var shelljs = require('shelljs');
+var path= require("path-extra");
+var logger  = require('./utils').logger;
+var util= require('./utils').utilities;
+var spawn   = require('child_process').spawn;
+var ParamedicKill   = require('./ParamedicKill');
+
+var ANDROID_RETRY_TIMES = 3;
+var ANDROID_TIME_OUT= 30; //5 Minutes
+
+function ParamedicTargetChooser(appPath, platform) {
+this.appPath  = appPath;
+this.platform = platform;
+}
+
+ParamedicTargetChooser.prototype.chooseTarget = function(emulator) {
+var targetObj = "";
+switch(this.platform) {
+case util.ANDROID:
+targetObj = this.chooseTargetForAndroid(emulator);
+break;
+case util.IOS:
+targetObj = this.chooseTargetForIOS(emulator);
+break;
+case util.WINDOWS:
+targetObj = this.chooseTargetForWindows(emulator);
+break;
+default:
+break;
+}
+return targetObj;
+}
+
+ParamedicTargetChooser.prototype.chooseTargetForAndroid = 
function(emulator) {
+logger.info("cordova-paramedic: Choosing Target for Android");
+var self = this;
+return this.startAnAndroidEmulator().then(function(){
+var obj = {};
+obj.target = self.getRunningDeviceForAndroid();
+return obj;
+});
+}
+
+ParamedicTargetChooser.prototype.getRunningDeviceForAndroid = function() {
+var androidCommand = "adb devices -l";
+logger.info("cordova-paramedic: Running command: " + androidCommand);
+
+var devicesResult  = shelljs.exec(androidCommand, {silent: true, 
async: false});
+if (devicesResult.code > 0) {
+logger.error("Failed to get the list of devices for android" );
+logger.error("Error code: " + devicesResult.code);
+return undefined;
+}
+
+var lines = devicesResult.output.split(/\n/);
+if(lines.length <= 1) {
+logger.error("No devices/emulators available for android");
+return undefined;
+}
+
+return lines[1].split(' ')[0].trim();
+}
+
+ParamedicTargetChooser.prototype.startAnAndroidEmulator = function() {
+logger.info("cordova-paramedic: Starting an Android emulator");
+
+var emuPath = path.join(this.appPath, "platforms", "android", 
"cordova", "lib", "emulator");
+var emulator = require(emuPath);
+
+var tryStart = function(numberTriesRemaining) {
+return emulator.start(null, ANDROID_TIME_OUT)
+.then(function(emulatorId) {
+if (emulatorId) {
+return emulatorId;
+} else if (numberTriesRemaining > 0) {
+var paramedicKill = new ParamedicKill(util.ANDROID);
+paramedicKill.kill();
+return tryStart(numberTriesRemaining - 1);
+} else {
+return null;
--- End diff --

Nitpick: should we log an error if we run out of tries?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-paramedic pull request: Choose Target and use it for loggi...

2016-05-10 Thread riknoll
Github user riknoll commented on a diff in the pull request:

https://github.com/apache/cordova-paramedic/pull/5#discussion_r62733686
  
--- Diff: lib/paramedic.js ---
@@ -175,39 +178,58 @@ ParamedicRunner.prototype.runTests = function() {
 reject(new Error('device is disconnected before passing the 
tests'));
 });
 
-var command = self.getCommandForStartingTests();
-logger.normal('cordova-paramedic: running command ' + command);
-
-exec(command, function(code, output) {
-if(code) {
-// this trace is automatically available in verbose mode
-// so we check for this flag to not trace twice
-if (!self.config.verbose) {
-logger.normal(output);
+return self.getCommandForStartingTests()
+.then(function(command){
+self.setPermissions();
+logger.normal('cordova-paramedic: running command ' + command);
+exec(command, function(code, output) {
+if(code) {
+// this trace is automatically available in verbose 
mode
+// so we check for this flag to not trace twice
+if (!self.config.verbose) {
+logger.normal(output);
+}
+logger.normal('cordova-paramedic: unable to run tests; 
command log is available above');
+return reject(new Error(command + " returned error 
code " + code));
 }
-logger.normal('cordova-paramedic: unable to run tests; 
command log is available above');
-return reject(new Error(command + " returned error code " 
+ code));
-}
 
-// skip tests if it was just build
-if (!self.shouldWaitForTestResult()) {
-return resolve(true);
-}
+// skip tests if it was just build
+if (!self.shouldWaitForTestResult()) {
+ return resolve(true);
--- End diff --

The spacing here is a bit off


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



Cordova Monthly Hangouts

2016-05-10 Thread Parashuram N
It has been a while since all of us met, so I was wondering if it would help to 
do a Cordova Monthly hangout ? I also understand that we have Phonegap day EU 
this month, and maybe we could use that timeframe to get more folks involved in 
the hangout ? For the rest of us who could not attend Phonegap day EU, we could 
do the hangount. It may also help other community members see how we do 
hangouts, and may be a way to encourage them to participate even more ?

I was thinking that we could discuss some of the following topics


1.   Cordova Telemetry work that Mefire is working on - driving that to a 
Closure, and ensuring that all developers and toolsmiths are good with the 
proposal and the data we collect

2.   Talk about our Bug Tirage bar, look at ways to reduce outstanding bug 
count and look at the work around running tests on every PR

3.   Follow up on the idea of a Cordova Roadmap

Any other ideas ? I could start a Cordova discuss.


[GitHub] cordova-paramedic pull request: Choose Target and use it for loggi...

2016-05-10 Thread riknoll
Github user riknoll commented on a diff in the pull request:

https://github.com/apache/cordova-paramedic/pull/5#discussion_r62734243
  
--- Diff: lib/utils/utilities.js ---
@@ -50,10 +50,14 @@ function getSimId() {
 
 if (findSimResult.code > 0) {
 logger.error("Failed to find simulator we deployed to");
-return;
+return undefined;
--- End diff --

Nitpick: I believe the `undefined` here is redundant. Same thing on line 76.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-plugin-camera pull request: Add pull request template

2016-05-10 Thread purplecabbage
Github user purplecabbage commented on the pull request:


https://github.com/apache/cordova-plugin-camera/pull/213#issuecomment-218265034
  
+1 to the PR title suggestion
The icla is NOT actually required for smaller changes, and we should only 
be enforcing this for large/deep changes.  (large,small,deep are all judgement 
calls I know)
The simple act of sending a pr does technically indicate that they are 
'giving' the code to us, so we only need to protect ourselves for the larger 
changes.




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-plugin-camera pull request: Add pull request template

2016-05-10 Thread tony--
Github user tony-- commented on the pull request:


https://github.com/apache/cordova-plugin-camera/pull/213#issuecomment-218277348
  
There are a couple places that contributor workflow is documented:
The wiki has a [contributor workflow 
page](https://wiki.apache.org/cordova/ContributorWorkflow) which also points to 
the [issue workflow page](https://wiki.apache.org/cordova/IssueWorkflow).
The docs have a [Contributor Guidelines 
page](http://cordova.apache.org/contribute/contribute_guidelines.html).

I guess the wiki pages are pretty much obsolete and the docs workflow is 
more current.

It seems like it would make sense to at least point to the docs page from 
the template, something like:
"This checklist is intended as a quick reference, for complete details 
please see our [Contributor 
Guidelines](http://cordova.apache.org/contribute/contribute_guidelines.html)".  
It would make sense to have the template checklist reflect the outline 
structure of the docs page workflow.  I guess this would mean add steps for 
getting code reviewed, running tests and commit message guideline.

If any requirements are added (e.g., PR title guideline) or changed as part 
of this, the docs should be updated to match the template checklist.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-plugin-camera pull request: Add pull request template

2016-05-10 Thread purplecabbage
Github user purplecabbage commented on the pull request:


https://github.com/apache/cordova-plugin-camera/pull/213#issuecomment-218282825
  
great points @tony-- ! +1 to all of 'em


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



RE: [DISCUSS] Cordova tools release

2016-05-10 Thread Mefire O .
I'd like to get the telemetry feature out with this release.

Thanks,
Omar Mefire

-Original Message-
From: Vladimir Kotikov (Akvelon) [mailto:v-vlk...@microsoft.com] 
Sent: Tuesday, May 10, 2016 12:47 AM
To: dev@cordova.apache.org
Subject: RE: [DISCUSS] Cordova tools release

+1

Thanks for handling cordova-common release - there is probably not much sense 
in releasing it separately (as I was planning initially) when other components 
also need to be released.

-
Best regards, Vladimir

-Original Message-
From: julio cesar sanchez [mailto:jcesarmob...@gmail.com]
Sent: Tuesday, May 10, 2016 1:14 AM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] Cordova tools release

+1

El martes, 10 de mayo de 2016, Shazron  escribió:

> +1
>
> On Mon, May 9, 2016 at 12:32 PM, Steven Gill  > wrote:
>
> > Any objections or concerns?
> >
> > Doing a cli, lib, plugman, common and fetch release.
> >
> > -Steve
> >
>

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org


[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread omefire
GitHub user omefire opened a pull request:

https://github.com/apache/cordova-docs/pull/599

Telemetry: Privacy Policy



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/omefire/cordova-docs TelemetryPrivacyPolicy

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/cordova-docs/pull/599.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #599


commit b46a042f39518368ea787820d0ea7b1c62d0c5cf
Author: Omar Mefire 
Date:   2016-05-10T20:55:12Z

Telemetry: Privacy Notice




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread omefire
Github user omefire commented on the pull request:

https://github.com/apache/cordova-docs/pull/599#issuecomment-218296850
  
@axemclion, @nikhilkh  to review


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62755904
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,21 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
+
+When you opt into telemetry, information about your usage of Apache 
Cordova is collected. The collected information consists of the following:
--- End diff --

Apache Cordova CLI


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62755937
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,21 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
+
+When you opt into telemetry, information about your usage of Apache 
Cordova is collected. The collected information consists of the following:
+
+* IP address
+* OS type and version
--- End diff --

Node version?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread omefire
Github user omefire commented on the pull request:

https://github.com/apache/cordova-docs/pull/599#issuecomment-218298615
  
http://imgur.com/FSDAifF


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread omefire
Github user omefire commented on the pull request:

https://github.com/apache/cordova-docs/pull/599#issuecomment-218299426
  
What it looks like: http://imgur.com/FSDAifF


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread omefire
Github user omefire commented on the pull request:

https://github.com/apache/cordova-cli/pull/247#issuecomment-218299896
  
Related: https://github.com/apache/cordova-docs/pull/599


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



Re: [DISCUSS] Cordova tools release

2016-05-10 Thread Steven Gill
When do you expect to merge it in?

On Tue, May 10, 2016 at 2:19 PM, Mefire O.  wrote:

> I'd like to get the telemetry feature out with this release.
>
> Thanks,
> Omar Mefire
>
> -Original Message-
> From: Vladimir Kotikov (Akvelon) [mailto:v-vlk...@microsoft.com]
> Sent: Tuesday, May 10, 2016 12:47 AM
> To: dev@cordova.apache.org
> Subject: RE: [DISCUSS] Cordova tools release
>
> +1
>
> Thanks for handling cordova-common release - there is probably not much
> sense in releasing it separately (as I was planning initially) when other
> components also need to be released.
>
> -
> Best regards, Vladimir
>
> -Original Message-
> From: julio cesar sanchez [mailto:jcesarmob...@gmail.com]
> Sent: Tuesday, May 10, 2016 1:14 AM
> To: dev@cordova.apache.org
> Subject: Re: [DISCUSS] Cordova tools release
>
> +1
>
> El martes, 10 de mayo de 2016, Shazron  escribió:
>
> > +1
> >
> > On Mon, May 9, 2016 at 12:32 PM, Steven Gill  > > wrote:
> >
> > > Any objections or concerns?
> > >
> > > Doing a cli, lib, plugman, common and fetch release.
> > >
> > > -Steve
> > >
> >
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
> For additional commands, e-mail: dev-h...@cordova.apache.org
>


[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread omefire
Github user omefire commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62758273
  
--- Diff: doc/telemetry.txt ---
@@ -0,0 +1,24 @@
+Synopsis
+
+cordova-cli telemetry [STATE]
+
+  STATE: on|off
+
+Turns telemetry collection on or off
+
+on ... Turns telemetry collection on
+off .. Turns telemetry collection off  
+
+Details
+A timed prompt asking the user to opt-in or out is displayed the first 
time cordova is run.
--- End diff --

It reinforces that they have options.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread omefire
Github user omefire commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62758588
  
--- Diff: spec/cli.spec.js ---
@@ -50,19 +56,34 @@ describe("cordova cli", function () {
 beforeEach(function () {
 });
 
-it("will spit out the version with -v", function () {
-cli(["node", "cordova", "-v"]);
-
expect(console.log.mostRecentCall.args[0]).toMatch(version);
+it("will spit out the version with -v", function (done) {
+cli(["node", "cordova", "-v"]).then(function() {
+
expect(console.log.mostRecentCall.args[0]).toMatch(version);
+done();
+}).fail(function() {
--- End diff --

They have changed because ```telemetry.showPrompt()``` is async, therefore 
the return of ```cli``` turned into async, and the tests had to be updated to 
reflect that.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Edit commands

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/597


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Update Win8 plugin.md

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/594


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Update plugman.md

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/587


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Update images.md

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/579


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread omefire
Github user omefire commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62759764
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
+} else {
+console.log(EOL + "You have been opted out of telemetry. To 
change this, run: cordova telemetry on");
+// Always track telemetry opt-outs! (whether opted-in or 
opted-out)
+track('telemetry-opt-out', 'via-cli-prompt-choice');
+}
+
+deferred.resolve(optIn); 
+});
+
+return deferred.promise;
+}
+
+function track() {
+insight.track.apply(insight, arguments);
+}
+
+function trackEvent(category, action, label, value) {
+insight.trackEvent({
+category: category,
+action: action,
+label: label,
+value: value
+});
+}
+
+function turnOn() {
+insight.optOut = false;
+}
+
+function turnOff() {
+insight.optOut = true;
+}
+
+/**
+ * Clears telemetry setting
+ * Has the same effect as if user never answered the telemetry prompt
+ * Useful for testing purposes
+ */
+function clear() {
+insight.optOut = undefined;
+}
+
+function isOptedIn() {
+return !insight.optOut;
+}
+
+/**
+ * Has the user already answered the telemetry prompt? (thereby opting in 
or out?)
+ */
+function hasUserOptedInOrOut() {
+return !(insight.optOut === undefined);
--- End diff --

Quesiton: Why do we 'have' to use 'typeof' ? According to the same link, it 
seems like this way is fine as well, with the difference between the two being 
that one throws when the variable is undeclared.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: change 'portait' to 'portrait'

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/566


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Update index.md

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/589


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Fixed a typo in a title

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/564


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Fix URL to cordova-sqlite-ext plugin Re...

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/590


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Update SQLite plugin details

2016-05-10 Thread nikhilkh
GitHub user nikhilkh opened a pull request:

https://github.com/apache/cordova-docs/pull/600

Update SQLite plugin details

@brodybits to help review.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/nikhilkh/cordova-docs patch-6

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/cordova-docs/pull/600.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #600






---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Fixed Typo: ccordova to cordova

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/515


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Update about easing of Apple IOS restri...

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-docs/pull/501


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-windows pull request: CB-11117: Optimize prepare for windo...

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on the pull request:

https://github.com/apache/cordova-windows/pull/174#issuecomment-218305527
  
Looks like there are some unit test failures


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread axemclion
Github user axemclion commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62764339
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,22 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
+
+When you opt into telemetry, information about your usage of Apache 
Cordova CLI is collected. The collected information consists of the following:
+
+* IP address
+* OS type and version
+* Node version
+* Cordova version
+* Commands executed, time of execution and status (success/failure)
+
+This information is saved in Google Analytics and handled by Google as 
described in their [privacy policy](http://www.google.com/policies/privacy/). 
See the documentation for instructions on how to disable telemetry if you 
prefer not to share your data.
--- End diff --

Link to documentation that says how to disable telemetry. 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread axemclion
Github user axemclion commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62764282
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,22 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
+
+When you opt into telemetry, information about your usage of Apache 
Cordova CLI is collected. The collected information consists of the following:
+
+* IP address
+* OS type and version
+* Node version
+* Cordova version
+* Commands executed, time of execution and status (success/failure)
+
+This information is saved in Google Analytics and handled by Google as 
described in their [privacy policy](http://www.google.com/policies/privacy/). 
See the documentation for instructions on how to disable telemetry if you 
prefer not to share your data.
+
+We use the gathered information to help us make our tool more useful and 
to better understand how it is used. We do not track or collect personally 
identifiable information or associate gathered data with any personally 
identifying information from other sources.
+
+By opting into telemetry, you consent to the collection of this data in 
the manner and for the purpose described above.
+
+Apache Cordova welcomes your questions or comments regarding this Privacy 
Policy. Send them to dev@cordova.apache.org
--- End diff --

The Apache Cordova __community__ welcomes your questions or comments 
regarding this Privacy Policy. Send them to dev@cordova.apache.org 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread axemclion
Github user axemclion commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62764381
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,22 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
--- End diff --

This is just the privacy policy for hte CLI. I think we should have that as 
a heading. 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread purplecabbage
Github user purplecabbage commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62765915
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
+} else {
+console.log(EOL + "You have been opted out of telemetry. To 
change this, run: cordova telemetry on");
+// Always track telemetry opt-outs! (whether opted-in or 
opted-out)
+track('telemetry-opt-out', 'via-cli-prompt-choice');
+}
+
+deferred.resolve(optIn); 
+});
+
+return deferred.promise;
+}
+
+function track() {
+insight.track.apply(insight, arguments);
+}
+
+function trackEvent(category, action, label, value) {
+insight.trackEvent({
+category: category,
+action: action,
+label: label,
+value: value
+});
+}
+
+function turnOn() {
+insight.optOut = false;
+}
+
+function turnOff() {
+insight.optOut = true;
+}
+
+/**
+ * Clears telemetry setting
+ * Has the same effect as if user never answered the telemetry prompt
+ * Useful for testing purposes
+ */
+function clear() {
+insight.optOut = undefined;
+}
+
+function isOptedIn() {
+return !insight.optOut;
+}
+
+/**
+ * Has the user already answered the telemetry prompt? (thereby opting in 
or out?)
+ */
+function hasUserOptedInOrOut() {
+return !(insight.optOut === undefined);
--- End diff --

the typeof === discussion is a matter of preference, I personally have 
never had an issue with 
```if (x) { // do something } ``` so I can check for null at the same time 
as I typically set js vars to null, but I am a freak.
As long as you are sure that the value will never actually be null, this 
should be fine; otherwise change it to == for a simple truthy comparison.
There is however an anti-pattern that is not obvious here. A boolean is 
being used to hold 3 values, no-answer, user-opted-in, user-opted-out.  When I 
see ```return !(insight.optOut === undefined);``` my immediate thought would be 
to correct it to ```return (insight.optOut !== undefined )``` which is not 
exactly the same meaning.
I would prefer 2 bools in this case. Something like: ```if( wasPrompted && 
isOptedIn ) ...```
... but again, preference.







---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands

[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62766349
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,22 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
--- End diff --

+1 - only covers the CLI - not the website itself.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62766491
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,22 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
+
+When you opt into telemetry, information about your usage of Apache 
Cordova CLI is collected. The collected information consists of the following:
+
+* IP address
+* OS type and version
+* Node version
+* Cordova version
+* Commands executed, time of execution and status (success/failure)
+
+This information is saved in Google Analytics and handled by Google as 
described in their [privacy policy](http://www.google.com/policies/privacy/). 
See the documentation for instructions on how to disable telemetry if you 
prefer not to share your data.
--- End diff --

We should probably link to 
http://cordova.apache.org/docs/en/latest/reference/cordova-cli/index.html and 
add the docs for it.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62766681
  
--- Diff: doc/cordova.txt ---
@@ -23,6 +23,12 @@ Project Commands
 serve .. Run project with a local webserver
 (including prepare)
 
+Telemetry Commands
+telemetry on ... Turn telemetry collection on
--- End diff --

Also, we need to document these commands and options here: 
https://github.com/apache/cordova-cli/blob/master/doc/readme.md


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread nikhilkh
Github user nikhilkh commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62767415
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
+} else {
+console.log(EOL + "You have been opted out of telemetry. To 
change this, run: cordova telemetry on");
+// Always track telemetry opt-outs! (whether opted-in or 
opted-out)
+track('telemetry-opt-out', 'via-cli-prompt-choice');
+}
+
+deferred.resolve(optIn); 
+});
+
+return deferred.promise;
+}
+
+function track() {
+insight.track.apply(insight, arguments);
+}
+
+function trackEvent(category, action, label, value) {
+insight.trackEvent({
+category: category,
+action: action,
+label: label,
+value: value
+});
+}
+
+function turnOn() {
+insight.optOut = false;
+}
+
+function turnOff() {
+insight.optOut = true;
+}
+
+/**
+ * Clears telemetry setting
+ * Has the same effect as if user never answered the telemetry prompt
+ * Useful for testing purposes
+ */
+function clear() {
+insight.optOut = undefined;
+}
+
+function isOptedIn() {
+return !insight.optOut;
+}
+
+/**
+ * Has the user already answered the telemetry prompt? (thereby opting in 
or out?)
+ */
+function hasUserOptedInOrOut() {
+return !(insight.optOut === undefined);
--- End diff --

`undefined` in JavaScript can be redefined to anything. `typeof` prevents 
that from having an effect

typeof insight.optOut !== "undefined"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-plugin-media-capture pull request: CB-10554: Implementing ...

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-plugin-media-capture/pull/60


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread purplecabbage
Github user purplecabbage commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62768428
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
+} else {
+console.log(EOL + "You have been opted out of telemetry. To 
change this, run: cordova telemetry on");
+// Always track telemetry opt-outs! (whether opted-in or 
opted-out)
+track('telemetry-opt-out', 'via-cli-prompt-choice');
+}
+
+deferred.resolve(optIn); 
+});
+
+return deferred.promise;
+}
+
+function track() {
+insight.track.apply(insight, arguments);
+}
+
+function trackEvent(category, action, label, value) {
+insight.trackEvent({
+category: category,
+action: action,
+label: label,
+value: value
+});
+}
+
+function turnOn() {
+insight.optOut = false;
+}
+
+function turnOff() {
+insight.optOut = true;
+}
+
+/**
+ * Clears telemetry setting
+ * Has the same effect as if user never answered the telemetry prompt
+ * Useful for testing purposes
+ */
+function clear() {
+insight.optOut = undefined;
+}
+
+function isOptedIn() {
+return !insight.optOut;
+}
+
+/**
+ * Has the user already answered the telemetry prompt? (thereby opting in 
or out?)
+ */
+function hasUserOptedInOrOut() {
+return !(insight.optOut === undefined);
--- End diff --

```
> typeof null === 'undefined'
< false
``` 
My concern is only for clarity of intent. If someone decides to redefine 
undefined, I would think things will break all over.



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-plugin-media-capture pull request: [CB-10554] Fix null ref...

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-plugin-media-capture/pull/51


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-ios pull request: CB-10695 Replacing SDK/ARCH parameters b...

2016-05-10 Thread shazron
Github user shazron commented on the pull request:

https://github.com/apache/cordova-ios/pull/197#issuecomment-218318589
  
Successfully manual test by creating a new project and adding the platform 
by specifying this repo with the changes and:
```
cordova emulate ios
cordova run --device
```


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-ios pull request: CB-10695 Replacing SDK/ARCH parameters b...

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-ios/pull/197


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-ios pull request: Use "cdv_" prefixed scrollView for UIVie...

2016-05-10 Thread shazron
Github user shazron commented on the pull request:

https://github.com/apache/cordova-ios/pull/187#issuecomment-218323149
  
I understand why this change should be made. However, since it is part of 
the public API (it is part of CDVPlugin), any changes to this will have to go 
in a major version (the next will be 5.0).

The original reason this was done (the Category) was as stated in the 4.0 
Release Notes:

https://github.com/apache/cordova-ios/blob/6cc86efbb17f59f2a9626b0867406be697fd47ab/RELEASENOTES.md#400-dec-04-2015
"Make webView property dynamic in CDVViewController and CDVPlugin (from 
CDVWebViewEngineProtocol reference). Added scrollView category to UIView for 
backwards compatibility reasons."

I believe you also have a typo "cdv_srollView" should be "cdv_scrollView" 
(missing a 'c' in scroll)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-ios pull request: - fix generate .ipa ios

2016-05-10 Thread shazron
Github user shazron commented on the pull request:

https://github.com/apache/cordova-ios/pull/207#issuecomment-218323850
  
Any update on this? If not I will probably close this.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-ios pull request: 4.0.x

2016-05-10 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/cordova-ios/pull/189


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-windows pull request: CB-11117: Optimize prepare for windo...

2016-05-10 Thread jasongin
Github user jasongin commented on the pull request:

https://github.com/apache/cordova-windows/pull/174#issuecomment-218324502
  
Oh, yeah I'll update those tests.

---
In reply to: 
[218305527](https://github.com/apache/cordova-windows/pull/174#issuecomment-218305527)
 [](ancestors = 218305527)


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-ios pull request: Use "cdv_" prefixed scrollView for UIVie...

2016-05-10 Thread purplecabbage
Github user purplecabbage commented on a diff in the pull request:

https://github.com/apache/cordova-ios/pull/187#discussion_r62772944
  
--- Diff: CordovaLib/Classes/Public/CDVPlugin.m ---
@@ -25,11 +25,11 @@ Licensed to the Apache Software Foundation (ASF) under 
one
 
 @implementation UIView (org_apache_cordova_UIView_Extension)
 
-@dynamic scrollView;
+@dynamic cdv_srollView;
 
-- (UIScrollView*)scrollView
+- (UIScrollView*)cdv_srollView
 {
-SEL scrollViewSelector = NSSelectorFromString(@"scrollView");
+SEL scrollViewSelector = NSSelectorFromString(@"cdv_srollView");
--- End diff --

typo: @"cdv_scrollView"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



RE: [DISCUSS] Cordova tools release

2016-05-10 Thread Mefire O .
I expect it to be merged in by tomorrow EOD or day Thursday morning.
If it's still not merged in by then, I wouldn't want to hold the release any 
longer.

Thanks,
Omar Mefire

-Original Message-
From: Steven Gill [mailto:stevengil...@gmail.com] 
Sent: Tuesday, May 10, 2016 2:39 PM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] Cordova tools release

When do you expect to merge it in?

On Tue, May 10, 2016 at 2:19 PM, Mefire O.  wrote:

> I'd like to get the telemetry feature out with this release.
>
> Thanks,
> Omar Mefire
>
> -Original Message-
> From: Vladimir Kotikov (Akvelon) [mailto:v-vlk...@microsoft.com]
> Sent: Tuesday, May 10, 2016 12:47 AM
> To: dev@cordova.apache.org
> Subject: RE: [DISCUSS] Cordova tools release
>
> +1
>
> Thanks for handling cordova-common release - there is probably not 
> much sense in releasing it separately (as I was planning initially) 
> when other components also need to be released.
>
> -
> Best regards, Vladimir
>
> -Original Message-
> From: julio cesar sanchez [mailto:jcesarmob...@gmail.com]
> Sent: Tuesday, May 10, 2016 1:14 AM
> To: dev@cordova.apache.org
> Subject: Re: [DISCUSS] Cordova tools release
>
> +1
>
> El martes, 10 de mayo de 2016, Shazron  escribió:
>
> > +1
> >
> > On Mon, May 9, 2016 at 12:32 PM, Steven Gill  > > wrote:
> >
> > > Any objections or concerns?
> > >
> > > Doing a cli, lib, plugman, common and fetch release.
> > >
> > > -Steve
> > >
> >
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
> For additional commands, e-mail: dev-h...@cordova.apache.org
>

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org


[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread omefire
Github user omefire commented on a diff in the pull request:

https://github.com/apache/cordova-docs/pull/599#discussion_r62776600
  
--- Diff: www/privacy/index.md ---
@@ -0,0 +1,22 @@
+---
+layout: page 
+title: Privacy Policy 
+---
+
+# Privacy Policy
+
+When you opt into telemetry, information about your usage of Apache 
Cordova CLI is collected. The collected information consists of the following:
+
+* IP address
+* OS type and version
+* Node version
+* Cordova version
+* Commands executed, time of execution and status (success/failure)
+
+This information is saved in Google Analytics and handled by Google as 
described in their [privacy policy](http://www.google.com/policies/privacy/). 
See the documentation for instructions on how to disable telemetry if you 
prefer not to share your data.
--- End diff --

+1


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-docs pull request: Telemetry: Privacy Policy

2016-05-10 Thread omefire
Github user omefire commented on the pull request:

https://github.com/apache/cordova-docs/pull/599#issuecomment-218331338
  
Thanks, comments addressed.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org



[GitHub] cordova-cli pull request: Telemetry

2016-05-10 Thread omefire
Github user omefire commented on a diff in the pull request:

https://github.com/apache/cordova-cli/pull/247#discussion_r62777073
  
--- Diff: src/telemetry.js ---
@@ -0,0 +1,132 @@
+/**
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+*/
+
+/* jshint node:true, bitwise:true, undef:true, trailing:true, 
quotmark:true,
+  indent:4, unused:vars, latedef:nofunc,
+  laxcomma:true
+*/
+
+
+
+// For further details on telemetry, see:
+// https://github.com/cordova/cordova-discuss/pull/43
+
+var Q = require('q');
+
+// Google Analytics tracking code
+var GA_TRACKING_CODE = 'UA-64283057-7';
+
+var pkg = require('../package.json');
+var Insight = require('insight');
+var insight = new Insight({
+trackingCode: GA_TRACKING_CODE,
+pkg: pkg
+});
+
+/**
+ * Returns true if the user opted in, and false otherwise
+ */
+function showPrompt() {
+
+var deferred = Q.defer();
+
+var msg = "May Cordova anonymously report usage statistics to improve 
the tool over time?";
+insight.askPermission(msg, function (unused, optIn) {
+var EOL = require('os').EOL;
+if (optIn) {
+console.log(EOL + "Thanks for opting into telemetry to help us 
better cordova");
+} else {
+console.log(EOL + "You have been opted out of telemetry. To 
change this, run: cordova telemetry on");
+// Always track telemetry opt-outs! (whether opted-in or 
opted-out)
+track('telemetry-opt-out', 'via-cli-prompt-choice');
+}
+
+deferred.resolve(optIn); 
+});
+
+return deferred.promise;
+}
+
+function track() {
+insight.track.apply(insight, arguments);
+}
+
+function trackEvent(category, action, label, value) {
+insight.trackEvent({
+category: category,
+action: action,
+label: label,
+value: value
+});
+}
+
+function turnOn() {
+insight.optOut = false;
+}
+
+function turnOff() {
+insight.optOut = true;
+}
+
+/**
+ * Clears telemetry setting
+ * Has the same effect as if user never answered the telemetry prompt
+ * Useful for testing purposes
+ */
+function clear() {
+insight.optOut = undefined;
+}
+
+function isOptedIn() {
+return !insight.optOut;
+}
+
+/**
+ * Has the user already answered the telemetry prompt? (thereby opting in 
or out?)
+ */
+function hasUserOptedInOrOut() {
+return !(insight.optOut === undefined);
--- End diff --

If ```undefined``` was to be redefined, that wouldn't be our biggest 
concern. Plus, modern webviews/browsers don't allow that anymore.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@cordova.apache.org
For additional commands, e-mail: dev-h...@cordova.apache.org