diff --git a/CHANGELOG.md b/CHANGELOG.md index 2a994e9ea7..3b014a88ed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ NativeScript CLI Changelog ================ + +3.1.2 (2017, July 06) +== + +### Fixed +* [Fixed #2950](https://github.com/NativeScript/nativescript-cli/issues/2950): Unable to provide user input on postinstall of plugin + 3.1.1 (2017, June 28) == @@ -8,6 +15,7 @@ NativeScript CLI Changelog * [Fixed #2892](https://github.com/NativeScript/nativescript-cli/issues/2892): Not copying the CFBundleURLTypes from the plist file to the project * [Fixed #2916](https://github.com/NativeScript/nativescript-cli/issues/2916): If no device or emulator is attached `tns debug android` kills the commandline process and doesn't start an emulator * [Fixed #2923](https://github.com/NativeScript/nativescript-cli/issues/2923): Fix asking for user email on postinstall +* [Fixed #2929](https://github.com/NativeScript/nativescript-cli/issues/2929): Android release builds with webpack disregards plugin's gradle dependencies. 3.1.0 (2017, June 22) diff --git a/LICENSE b/LICENSE index 2c63567572..dda4f06e7e 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ Apache License same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright (c) 2015-2016 Telerik AD + Copyright (c) 2015-2017 Telerik AD Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -198,4 +198,4 @@ Apache License 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. \ No newline at end of file + limitations under the License. diff --git a/lib/common b/lib/common index 8be9f921aa..cc5d470197 160000 --- a/lib/common +++ b/lib/common @@ -1 +1 @@ -Subproject commit 8be9f921aa50000405af9ded63c770da7910d741 +Subproject commit cc5d47019765a918e0937e45ffb31597076d3d6f diff --git a/lib/config.ts b/lib/config.ts index 68e9409bca..a3b9d77e49 100644 --- a/lib/config.ts +++ b/lib/config.ts @@ -24,6 +24,7 @@ export class StaticConfig extends StaticConfigBase implements IStaticConfig { public CLIENT_NAME = "tns"; public CLIENT_NAME_ALIAS = "NativeScript"; public ANALYTICS_API_KEY = "5752dabccfc54c4ab82aea9626b7338e"; + public ANALYTICS_EXCEPTIONS_API_KEY = "35478fe7de68431399e96212540a3d5d"; public TRACK_FEATURE_USAGE_SETTING_NAME = "TrackFeatureUsage"; public ERROR_REPORT_SETTING_NAME = "TrackExceptions"; public ANALYTICS_INSTALLATION_ID_SETTING_NAME = "AnalyticsInstallationID"; diff --git a/lib/node-package-manager.ts b/lib/node-package-manager.ts index f506855a4c..c8115d5342 100644 --- a/lib/node-package-manager.ts +++ b/lib/node-package-manager.ts @@ -1,5 +1,6 @@ import * as path from "path"; import { exported } from "./common/decorators"; +import { isInteractive } from "./common/helpers"; export class NodePackageManager implements INodePackageManager { private static SCOPED_DEPENDENCY_REGEXP = /^(@.+?)(?:@(.+?))?$/; @@ -208,16 +209,20 @@ export class NodePackageManager implements INodePackageManager { private async getNpmInstallResult(params: string[], cwd: string): Promise { return new Promise((resolve, reject) => { const npmExecutable = this.getNpmExecutableName(); - let childProcess = this.$childProcess.spawn(npmExecutable, params, { cwd, stdio: "pipe" }); + const stdioValue = isInteractive() ? "inherit" : "pipe"; + + const childProcess = this.$childProcess.spawn(npmExecutable, params, { cwd, stdio: stdioValue }); let isFulfilled = false; let capturedOut = ""; let capturedErr = ""; - childProcess.stdout.on("data", (data: string) => { - this.$logger.write(data.toString()); - capturedOut += data; - }); + if (childProcess.stdout) { + childProcess.stdout.on("data", (data: string) => { + this.$logger.write(data.toString()); + capturedOut += data; + }); + } if (childProcess.stderr) { childProcess.stderr.on("data", (data: string) => {