From acab90f1ccdec8e5029ea21246e522c9cb22e4af Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Wed, 1 Jul 2015 15:18:26 -0700 Subject: [PATCH 01/17] Updated team build tutorials, known issues for RTM and added Cordova 5 tutorials --- Readme.md | 13 +- known-issues/known-issues-general.md | 15 +- known-issues/known-issues-ios.md | 14 +- known-issues/known-issues-ripple-cordova.md | 14 +- known-issues/known-issues-vs2015.md | 13 + tutorial-cordova-5/README.md | 271 ++++++++++++++++++++ tutorial-cordova-5/cordova-5-security.md | 171 ++++++++++++ tutorial-cordova-5/media/cordova-5-0.png | Bin 0 -> 26157 bytes tutorial-cordova-5/media/cordova-5-1.png | Bin 0 -> 2152 bytes tutorial-cordova-5/media/cordova-5-2.png | Bin 0 -> 8839 bytes tutorial-cordova-5/media/cordova-5-3.png | Bin 0 -> 14278 bytes tutorial-cordova-5/media/cordova-5-4.png | Bin 0 -> 45779 bytes tutorial-cordova-5/media/cordova-5-5.png | Bin 0 -> 45057 bytes tutorial-cordova-5/media/cordova-5-6.png | Bin 0 -> 62715 bytes tutorial-cordova-5/media/cordova-5-7.png | Bin 0 -> 25693 bytes tutorial-cordova-5/media/cordova-5-8.png | Bin 0 -> 12963 bytes tutorial-cordova-5/media/npm-local-1.png | Bin 0 -> 19415 bytes tutorial-cordova-5/media/npm-local-2.png | Bin 0 -> 24398 bytes tutorial-gulp/gulp-ci.md | 2 +- tutorial-team-build/Jenkins.md | 13 +- tutorial-team-build/RC/TFS2013.md | 182 +++++++++++++ tutorial-team-build/RC/TFS2015.md | 191 ++++++++++++++ tutorial-team-build/RC/media/tfs2013-1.png | Bin 0 -> 19489 bytes tutorial-team-build/RC/media/tfs2013-2.png | Bin 0 -> 79785 bytes tutorial-team-build/RC/media/tfs2013-3.png | Bin 0 -> 34629 bytes tutorial-team-build/RC/media/tfs2015-0.png | Bin 0 -> 6963 bytes tutorial-team-build/RC/media/tfs2015-1.png | Bin 0 -> 45432 bytes tutorial-team-build/RC/media/tfs2015-2.png | Bin 0 -> 46720 bytes tutorial-team-build/RC/media/tfs2015-3.png | Bin 0 -> 22558 bytes tutorial-team-build/RC/media/tfs2015-4.png | Bin 0 -> 40722 bytes tutorial-team-build/RC/media/tfs2015-5.png | Bin 0 -> 21276 bytes tutorial-team-build/RC/media/tfs2015-6.png | Bin 0 -> 40405 bytes tutorial-team-build/RC/media/tfs2015-7.png | Bin 0 -> 47759 bytes tutorial-team-build/RC/media/tfs2015-8.png | Bin 0 -> 14072 bytes tutorial-team-build/README.md | 66 +++-- tutorial-team-build/TFS2013.md | 69 ++--- tutorial-team-build/TFS2015.md | 115 +++------ tutorial-team-build/media/tfs2015-1.png | Bin 45432 -> 36114 bytes tutorial-team-build/media/tfs2015-2.png | Bin 46720 -> 34019 bytes tutorial-team-build/media/tfs2015-3.png | Bin 22558 -> 32047 bytes tutorial-team-build/media/tfs2015-4.png | Bin 40722 -> 41372 bytes 41 files changed, 984 insertions(+), 165 deletions(-) create mode 100644 tutorial-cordova-5/README.md create mode 100644 tutorial-cordova-5/cordova-5-security.md create mode 100644 tutorial-cordova-5/media/cordova-5-0.png create mode 100644 tutorial-cordova-5/media/cordova-5-1.png create mode 100644 tutorial-cordova-5/media/cordova-5-2.png create mode 100644 tutorial-cordova-5/media/cordova-5-3.png create mode 100644 tutorial-cordova-5/media/cordova-5-4.png create mode 100644 tutorial-cordova-5/media/cordova-5-5.png create mode 100644 tutorial-cordova-5/media/cordova-5-6.png create mode 100644 tutorial-cordova-5/media/cordova-5-7.png create mode 100644 tutorial-cordova-5/media/cordova-5-8.png create mode 100644 tutorial-cordova-5/media/npm-local-1.png create mode 100644 tutorial-cordova-5/media/npm-local-2.png create mode 100644 tutorial-team-build/RC/TFS2013.md create mode 100644 tutorial-team-build/RC/TFS2015.md create mode 100644 tutorial-team-build/RC/media/tfs2013-1.png create mode 100644 tutorial-team-build/RC/media/tfs2013-2.png create mode 100644 tutorial-team-build/RC/media/tfs2013-3.png create mode 100644 tutorial-team-build/RC/media/tfs2015-0.png create mode 100644 tutorial-team-build/RC/media/tfs2015-1.png create mode 100644 tutorial-team-build/RC/media/tfs2015-2.png create mode 100644 tutorial-team-build/RC/media/tfs2015-3.png create mode 100644 tutorial-team-build/RC/media/tfs2015-4.png create mode 100644 tutorial-team-build/RC/media/tfs2015-5.png create mode 100644 tutorial-team-build/RC/media/tfs2015-6.png create mode 100644 tutorial-team-build/RC/media/tfs2015-7.png create mode 100644 tutorial-team-build/RC/media/tfs2015-8.png diff --git a/Readme.md b/Readme.md index b587e706..0a85f256 100644 --- a/Readme.md +++ b/Readme.md @@ -1,12 +1,20 @@ # Visual Studio Tools for Apache Cordova -This repository contains a set of documents and tutorials for the **Visual Studio 2015 RC** release of **[Tools for Apache Cordova](http://aka.ms/cordova).** +This repository contains a set of documents and tutorials for the **Visual Studio 2015** release of **[Tools for Apache Cordova](http://aka.ms/cordova).** -**Note that this documentation does not apply to Visual Studio 2013 CTPs.** +**Note that, with the exception of known issues, this documentation does not apply to Visual Studio 2013 CTPs.** ## Tutorials +1. [Using Apache Cordova 5](./tutorial-cordova-5) + 1. [An Introduction to Cordova 5 Security](./tutorial-cordova-5/cordova-5-security.md) 1. [Using Gulp with your Cordova projects](./tutorial-gulp) + 1. [Using Gulp to Build Cordova Projects](./tutorial-gulp/gulp-ci.md) + 1. [Invoking Gulp Tasks During a Cordova Build and the VS Task Runner Explorer](./tutorial-gulp/gulp-task-runner-explorer.md) + 1. [Compiling TypeScript wit Gulp](./tutorial-gulp/gulp-typescript.md) 1. [Building Cordova Apps in a Team / Continuous Integration Environment](./tutorial-team-build) + 1. [Getting Start with Cordova & TFS 2015 or Visual Studio Online](./tutorial-team-build/TFS2015.md) + 1. [Getting Start with Cordova & TFS 2013](./tutorial-team-build/TFS2013.md) + 1. [Getting Start with Cordova & Jenkins CI](./tutorial-team-build/Jenkins.md) 1. [Package & Publish your Cordova Applications](./tutorial-package-publish) @@ -30,7 +38,6 @@ This repository contains a set of documents and tutorials for the **Visual Studi 1. [Visual Studio 2015](./known-issues/known-issues-vs2015.md) 1. [CTP 3.1 / Visual Studio 2013](./known-issues/known-issues-vs2013.md) - ## Help us improve our documentation Help us improve out docuementaiton by sending us a pull-request or opening a [GitHub Issue](https://github.com/Microsoft/cordova-docs/issues/new) diff --git a/known-issues/known-issues-general.md b/known-issues/known-issues-general.md index c04ee2c4..72a66117 100644 --- a/known-issues/known-issues-general.md +++ b/known-issues/known-issues-general.md @@ -11,6 +11,7 @@ This article covers general [known issues](../Readme.md#knownissues) related to **Building a Cordova project from source control results in Cordova plugin APIs not returning results:** The following four json files can cause this to occur if added to source control. - plugins/android.json +- plugins/ios.json - plugins/windows.json - plugins/remote_ios.json - plugins/wp8.json. @@ -18,22 +19,14 @@ This article covers general [known issues](../Readme.md#knownissues) related to Remove these files from source control if you are not checking in the "platforms" folder (reccomended). For local copies, you can either fetch a fresh copy from source control or remove the above files along with platforms found in the "platforms" folder to resolve the issue. See [tips and workarounds](../tips-and-workarounds/general/README.md#l#missingexclude) for additional details. ---------- -**Plugin with variables not working:** Due to a Cordova issue with Cordova 4.3.0, you can run into problems with plugin variables in Cordova < 5.0.0. Plugin variable information is lost if you install the "plugin" before the "platform" which can happen depending on your workflow. They do, however, function in Cordova 5.1.1 which you can use with VS 2015. To update to 5.1.1 and use plugin variables, you will need to update your VS project and use the command line. +**Plugin with variables not working:** Due to a Cordova issue with Cordova 4.3.0 and 4.3.1, you can run into problems with plugin variables in Cordova < 5.0.0. Plugin variable information is lost if you install the "plugin" before the "platform" which can happen depending on your workflow. They do, however, function in Cordova 5.1.1 which you can use with VS 2015. Follow these steps to use a plugin with variables: 1. Remove the plugins with the variables via the config designer. 2. Update to Cordova 5.1.1 via the config designer (Platforms > Cordova CLI) - 3. From the command line: - 1. Go to your project directory. - 2. Type the following from substituting project path, plugin name, and variables for those that apply to you: - - ~~~~~~~~~~~~~~ - cd - npm install -g cordova@5.1.1 - cordova plugin add nl.x-services.plugins.launchmyapp --variable URL_SCHEME=myscheme - ~~~~~~~~~~~~~~ - + 3. Re-add your plugin via "Plugins" tab in the config.xml designer + ---------- **Slow first build or first plugin add:** The first build or plugin add for a given version of Cordova will be slower than subsequent builds as VS must first dynamically acquire Cordova. See the Output Window for more detail on progress. Further, the first remote iOS build will exhibit the same behavior as the agent downloads Cordova on your OSX machine. If you encounter a CordovaModuleLoadError with the first iOS build for a given Cordova version you can follow [these instructions](../tips-and-workarounds/ios/README.md#npm-cache) to resolve the problem. diff --git a/known-issues/known-issues-ios.md b/known-issues/known-issues-ios.md index 7a9cee6f..51173957 100644 --- a/known-issues/known-issues-ios.md +++ b/known-issues/known-issues-ios.md @@ -1,6 +1,18 @@ #**Known Issues - iOS** This article covers [known issues](../Readme.md#knownissues) related to Visual Studio Tools for Apache Cordova 2015 when building or deploying to iOS devices or simulators. +---------- +**vs-ms-remote reports a 404 error when using VS 2015 RTM or later:** VS 2015 RTM and up uses a new "remotebuild" agent instead of vs-mda-remote. See [remotebuild installation instructions](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +---------- +**iOS Simulator does not work when using the remotebuild agent and VS 2015 RTM:** You need to install version 3.1.1 of the ios-sim node module. Run "npm install -g ios-sim@3.1.1" from the Terminal app in OSX to install. See [remotebuild installation instructions](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +---------- +**iPhone 4S Simulator appears when selecting iPad or other device when using the remotebuild agent and VS 2015 RTM:** You need to install version 3.1.1 of the ios-sim node module. Run "npm install -g ios-sim@3.1.1" from the Terminal app in OSX to install. See [remotebuild installation instructions ](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +---------- +**Existing vs-mda-remote settings in Visual Studio do not work with the remotebuild agent:** You will need to generate and use a new PIN when setting up Visual Studio to connect to the remotebuild agent for the first time. If you are not using secure mode, turn secure mode on and then off again to cause VS to reinitalize. See [remotebuild installation instructions](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + ---------- **CordovaModuleLoadError from vs-mda-remote:** This error can occur if your ~/.npm folder or some of its contents were created while running as an administrator (sudo). To resolve, run the following commands after installing the latest version of the [vs-mda-remote package](https://www.npmjs.com/package/vs-mda-remote). These commands ensure your user has permissions to the contents of the npm package cache in your home directory when using older versions of Node.js and npm. Newer versions of Node.js and npm will do this for you automatically. @@ -38,6 +50,6 @@ As a workaround, if you enter this state, soft reset your iOS device. * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-ripple-cordova.md b/known-issues/known-issues-ripple-cordova.md index e0b94ca9..0f757f17 100644 --- a/known-issues/known-issues-ripple-cordova.md +++ b/known-issues/known-issues-ripple-cordova.md @@ -5,22 +5,14 @@ This article covers general [known issues](../Readme.md#knownissues) related to **Cordova 5.x.x:** See [Cordova 5.x.x known issues](known-issues-cordova5.md) for details on Cordova and Ripple related issues that are specific to Cordova 5.0.0 and up. ---------- -**Plugin with variables not working:** Due to a Cordova issue with Cordova 4.3.0, you can run into problems with plugin variables in Cordova < 5.0.0. Plugin variable information is lost if you install the "plugin" before the "platform" which can happen depending on your workflow. They do, however, function in Cordova 5.1.1 which you can use with VS 2015. To update to 5.1.1 and use plugin variables, you will need to update your VS project and use the command line. +**Plugin with variables not working:** Due to a Cordova issue with Cordova 4.3.0 and 4.3.1, you can run into problems with plugin variables in Cordova < 5.0.0. Plugin variable information is lost if you install the "plugin" before the "platform" which can happen depending on your workflow. They do, however, function in Cordova 5.1.1 which you can use with VS 2015. Follow these steps to use a plugin with variables: 1. Remove the plugins with the variables via the config designer. 2. Update to Cordova 5.1.1 via the config designer (Platforms > Cordova CLI) - 3. From the command line: - 1. Go to your project directory. - 2. Type the following from substituting project path, plugin name, and variables for those that apply to you: - - ~~~~~~~~~~~~~~ - cd - npm install -g cordova@5.1.1 - cordova plugin add nl.x-services.plugins.launchmyapp --variable URL_SCHEME=myscheme - ~~~~~~~~~~~~~~ - + 3. Re-add your plugin via "Plugins" tab in the config.xml designer + ---------- **TypeError: Request path contains unescaped characters:** When building or installing a plugin you may encounter this error if you are using a proxy with certain versions of Node.js and Cordova after a "npm http GET". This is a Cordova issue and the simplest workaround is to downgrade Node.js to 0.10.29. This will be resolved in a future version of Cordova. See [tips and workarounds](../tips-and-workarounds/general/README.md#cordovaproxy) for additional details. diff --git a/known-issues/known-issues-vs2015.md b/known-issues/known-issues-vs2015.md index c52ea818..8191254f 100644 --- a/known-issues/known-issues-vs2015.md +++ b/known-issues/known-issues-vs2015.md @@ -103,6 +103,18 @@ Lastly, you should add the following XML elements to your config.xml to ensure y ~~~~~~~~~~~~~~~~~~~~~~ +##Visual Studio 2015 RTM +---------- +**vs-ms-remote reports a 404 error when using VS 2015 RTM or later:** VS 2015 RTM and up uses a new "remotebuild" agent instead of vs-mda-remote. See [remotebuild installation instructions](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +---------- +**iOS Simulator does not work when using the remotebuild agent and VS 2015 RTM:** You need to install version 3.1.1 of the ios-sim node module. Run "npm install -g ios-sim@3.1.1" from the Terminal app in OSX to install. See [remotebuild installation instructions](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +---------- +**iPhone 4S Simulator appears when selecting iPad or other device when using the remotebuild agent and VS 2015 RTM:** You need to install version 3.1.1 of the ios-sim node module. Run "npm install -g ios-sim@3.1.1" from the Terminal app in OSX to install. See [remotebuild installation instructions ](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +**Existing vs-mda-remote settings in Visual Studio do not work with the remotebuild agent:** You will need to generate and use a new PIN when setting up Visual Studio to connect to the remotebuild agent for the first time. If you are not using secure mode, turn secure mode on and then off again to cause VS to reinitalize. See [remotebuild installation instructions](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + ##Visual Studio 2015 RC ---------- **VS 2015 RC and Cordova 5.x.x / Cordova Android 4.x.x:** See [Cordova 5.x.x known issues](known-issues-cordova5.md) for details on Android related issues that are specific to Cordova 5.0.0 and up. @@ -118,6 +130,7 @@ To install updated plugins, follow [this proceedure to install a npm sourced plu **Building a Cordova project from source control results in Cordova plugin APIs not returning results:** The following four json files can cause this to occur if added to source control. - plugins/android.json +- plugins/ios.json - plugins/windows.json - plugins/remote_ios.json - plugins/wp8.json. diff --git a/tutorial-cordova-5/README.md b/tutorial-cordova-5/README.md new file mode 100644 index 00000000..9ed10708 --- /dev/null +++ b/tutorial-cordova-5/README.md @@ -0,0 +1,271 @@ +#Using Apache Cordova 5 +**Note that this documentation applies to Visual Studio 2015 and does not apply to Visual Studio 2013 CTPs.** + +Tools for Apache Cordova supports cordova 4.3.1 along with the newly released Cordova 5.1.1 version of cordova. As the major version number increase implies, Cordova 5 is a departure from 3.x and 4.x versions of Cordova in a number of very important ways. Note that there were a number of issues with Cordova 5.0.0 itself that kept us from recommending its use including an [Android security issue](https://github.com/Chuxel/cordova-docs/tree/master/tips-and-workarounds/android/security-05-26-2015). As a result, we strongly reccomend the use of **Cordova 5.1.1** with **Visual Studio 2015 RTM** and up. + +This article will summarize the changes in Cordova 5 and how you can take advantage of some of its new features and adapt existing apps. Specifically it will cover: + +1. [Security model changes to the Android and iOS platforms](#security) +1. [Primary Cordova plugin repository switching to npm](#npm) +1. [Gradle build instead of Ant for Android](#gradle) +1. [Pluggable WebViews and the Crosswalk WebView for Android](#crosswalk) +1. [Windows 10 support and improved Cordova interoperability](#win10) + +New projects created using Tools for Apache Cordova will automatically use Cordova 4.3.1. You can switch to this version of Cordova by following these steps: + +1. Double click on config.xml + +2. Select the "Platforms" left navigation tab + +3. Change the version number to 5.1.1 and save config.xml + + ![Select Cordova Version]() + +Note that when you build this will **automatically remove any existing contents in the platforms folder in the filesystem**. If you have opted to customize the native project, you should consider migrating your custom assets to the **res/native** folder (ex: res/native/android) which will automatically add the files to the project before preparing the Cordova project to build. + +However, you will want to exercise care here since **Android in particular has undergone significant revisions in Cordova 5.** The remainder of this article will highlight these updates and cover tips for adapting your existing apps to these changes. + +###A Note on Cordova Version Numbers +Historically Cordova and all its components have used one unified version number. This was particularly true with Cordova versions prior to 3.0.0. Underneath the hood this changed when Cordova 4.0.0 was released but most end users were never exposed to this difference. With the release of Cordova 5.0.0 you may also see reference to the release of "Cordova Android 4.0.0." It's important to note that this does not refer to the top level Cordova version but instead the **platform** version. You can think of a platform in many ways as a native project generator combined with a set of scripts designed to build the app. + +Understanding these differences can be important when reading blog posts or updates on the Cordova web site. Here is how these different components are typically described: + +- **Cordova 5.1.1** refers to version 5.1.1 of the [Cordova CLI](http://cordova.apache.org/docs/en/5.0.0/guide_cli_index.md.html#The%20Command-Line%20Interface) (and an underlying core library called [cordova-lib](https://www.npmjs.com/package/cordova-lib)). [Documentation](http://cordova.apache.org/docs/en/5.0.0/guide_overview_index.md.html#Overview) on the Cordova web site will also refer to this version number. + +- **Cordova CLI 5.1.1** is largely equivalent to Cordova 5.1.1 but is specifically referring to the [Cordova CLI npm package](https://www.npmjs.com/package/cordova). + +- **Platform versions** follow a different numbering scheme. A given Cordova CLI version "pins" a set of platform versions by default since all testing for the release was done using this specific combination of components. The Cordova OSS project does not typically back-test earlier versions of the CLI with newer platforms unless specifically noted in the release notes. You will typically see these platform versions mentioned in a form similar to "Cordova Android 4.0.0". This naming scheme inherits its name from the [cordova-android](https://www.npmjs.com/package/cordova-android) and other similarly named npm packages that are installed when the platform is added to your project. Visual Studio will automatically perfom this "platform add" operation on your behalf but you may notice a version number like this in the Output Window when you build. + + The following Cordova platform versions supported by Tools for Apache Cordova are pinned in **Cordova CLI 5.1.1** (or [see here](http://cordova.apache.org/news/2015/06/10/tools-release.html) for a complete list): + + - Cordova Android 4.0.2 + - Cordova iOS 3.8.0 + - Cordova Windows 4.0.0 + - Cordova WP8 3.8.1 + +Other components are also versioned independantly, but typically you will not be directly exposed to them. It is the release of Cordova Android 4.0.0 that triggered the major version increase for Cordova as a whole given it had a number of breaking changes. Windows 4.0.0 is also a major release that includes Windows 10 support but was designed to not have breaking changes when building for Windows or Windows Phone 8.1. + +Note that you can actually add different platform versions to your project for a given CLI version through the use of some XML elements or command line options for edge case scenarios. See the [May 26th, 2015 Android Cordova Platform Security Issue](../tips-and-workarounds/android/security-05-26-2015) article for a specific example of how this works. + + +##Security Model Changes for Android and iOS +One of the more confusing changes about Cordova 5 is that the updated version of the Android platform (also called Cordova Android 4.x) and iOS now follow a different, but more powerful security model designed to provide developers with the tools needed to prevent cross-site scripting attacks among other issues. A critical aspect of this security model is that **absolutely no network access of any kind is allowed without the installation of a Cordova plugin**. + +There are a whole host of new security features available and we **strongly reccomend you read the [Introduction to Cordova 5 Security](./cordova-5-security.md) document** for a introduction on them. This article will focus on getting you up and running with the basics. + +###The New Whitelist Plugin +The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml element used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. + +The problem with this model is you may want to be able to make an XHR request to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://cordova.apache.org/announcements/2014/08/04/android-351.html) which has led to a syntax that strayed away from the original [W3C Widget spec](http://www.w3.org/TR/widgets/) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. + +As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allows-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allows-intent** element has been introduced specifically designed to control Android intents. + +Projects created using the Cordova CLI contain fairly restrictive rules that are intended to represent a reasonable starting point for most projects. Specifically it: + +1. Allows XHR and images to originate from any URL +2. Disallows navigation to external URLs (hosted content) +3. Disallows inline script (Meaning no <script> tags or "on" attributes on HTML elements) on recent versions of Android, iOS, or Windows via a W3C Content Security Policy (CSP) in index.html +4. Allows the "tel:", "sms:", "mailto:", and "geo:" intents + +You'll want to start your project with roughly these same defaults and alter as needed. See below for how to add these defaults to your porject and the [Introduction to Cordova 5 Security](./cordova-5-security.md) document for details on why these defaults are in palce and how to change them. + +###Configuring Security Settings from a VS Project +When you upgrade a project to Cordova 5.0.0+, you will want to take the following steps to if you wish to mirror the base security policy listed above. You can then customize as needed to meet your needs. + +1. Add the whitelist plugin to your project via config.xml: + + 1. Right-click on config.xml and select "View Code" + + 2. Add the following XML elements under the <widget> element: + + ~~~~~~~~~~~~~~~~~~~~~~~ + + ~~~~~~~~~~~~~~~~~~~~~~~ + + The next time you build in Visual Studio, VS will install this version of the whitelist plugin. You can update the version number as needed. + +2. Update config.xml with the allow-intent or allow-navigation elements as needed: + 1. If you have not already, right-click on config.xml and select "View Code" + + 2. Add the following XML elements under the <widget> element: + + ~~~~~~~~~~~~~~~~~~~~~~~ + + + + + + + ~~~~~~~~~~~~~~~~~~~~~~~ + + You should already have an <access> element in your config.xml. You can use the "Domain Access" list under the "Common" tab in the config.xml designer to add or edit your current list. + + 3. Optionally, you can allow navigation to hosted content by adding URLs to config.xml as follows: + + ~~~~~~~~~~~~~~~~~~~~~~~ + + ~~~~~~~~~~~~~~~~~~~~~~~ + +3. Add a Content Security Policy (CSP) to your HTML pages: + 1. Add the following <meta> tag to each of your top level HTML pages (like index.html). + + ~~~~~~~~~~~~~~~~~~~~~~~ + + ~~~~~~~~~~~~~~~~~~~~~~~ + + Note: It does not need to be added to pages dynamically loaded by a JavaScript framework like AngluarJS or WinJS - many times you just need to add it to index.html. + + 2. Customize the CSP policy to meet your needs. See [Introduction to Cordova 5 Security](./cordova-5-security.md) for details. + + 3. You may wish to use the Crosswalk WebView plugin when targeting earlier versions of Android as CSP support was not introduced until Android 4.4. See [the section on Crosswalk later in this article](#crosswalk) for additional tips on using Crosswalk. + + +##Primary Cordova Plugin Repository is Now Npm +Another significant departure in Cordova 5 and the community as a whole is the migration of the primary source of Cordova plugins from the custom repository backed model that exists in Cordova 3.x and 4.x to the "Node Package Manager" (npm) repository. The plugins.cordova.io repository has seen a few service interruptions and given the web community's increased use of Node.js for client-side development and Cordova's heavy use of npm for not only its command line interface but as a source for Cordova "platforms," the natural next step was to migrate plugins to npm as well. More details on this transition [can be found here.](http://cordova.apache.org/announcements/2015/04/21/plugins-release-and-move-to-npm.html) + +However, unfortunately this switch over is not transparent. For a few very specific reasons, this change over can be a bit confusing and we're working with the community to determine some ways to make the transition a bit more seamless going forward. + +###Plugin ID Changes +A significant change to be aware of is that the IDs used to refer to many Cordova plugins have changed. This was done for two reasons. First, the different ID helps to re-enforce that older versions of Cordova will not get plugin updates. Rather than having an arbitrary version number where the updates stop, using a different ID makes this change over explicit. Second, the old reverse domain style for Cordova plugin IDs does not conform to community best practices for package names in npm. + +As a result, core plugins like Camera have changed from [org.apache.cordova.camera](http://plugins.cordova.io/#/package/org.apache.cordova.camera) in version 0.3.6 of the plugin to [cordova-plugin-camera](https://www.npmjs.com/package/cordova-plugin-camera) in versions 1.0.0 and higher. + +![Custom Local Plugin]() + +![Custom Local Plugin]() + +You can find running list of [old verses new plugin IDs in this location](https://github.com/stevengill/cordova-registry-mapper/blob/master/index.js). You will be informed of the new ID whenever you add a plugin from this list when either using the command line or the config.xml designer. The config.xml designer will automatically add these new IDs for Cordova 5.0.0+ and the old IDs for older versions of Cordova that do not support them. + +###Cordova Plugin Registry +Unfortunately the community is in a state of flux when it comes to a "source of truth" for all available Cordova plugins. + +- For the time being, [plugins.cordova.io](http://plugins.cordova.io) **does not contain npm sourced plugins.** +- For npm sourced plugins, you should instead search npm using the [ecosystem:cordova](https://www.npmjs.com/search?q=ecosystem%3Acordova) tag. + + ![Custom Local Plugin]() + +Both sets of plugins can be used with Cordova 5.0.0+ so in the short term you should search in both locations for plugins. Plugins found in npm are the most likely to work without issue with Cordova 5.0.0 and higher and may or may not work with earlier versions of Cordova. Npm will be the eventual source of truth, but things are a bit messy during this transition period. + +We are actively working with the community on the best way to merge some of the functionality of the existing plugins.cordova.io site with the reliability and improvements npm provides. + + +###Cordova 3.x and 4.x Don't Support Npm as a Plugin Source +An early source of confusion can lead from the fact that Cordova 3.x and 4.x cannot use plugins sourced from npm. The Cordova CLI in these versions simply does not have the capability. A specific issue that can come up here is that updates to plugins will now generally be going to npm **not** the older plugin registry sourced method used by these earlier version of Cordova plugins. + +Generally your best course of action if you need an updated plugin is to also update to Cordova 5.1.1 or later. See the [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-npm) section if you absolutley must get an updated plugin for a project that uses an earlier version of Cordova for potential options. + + +##Gradle Build Instead of Ant for Android +On the surface, this seems like a fairly innocuous change but we've continued to hear about unexpected issues in some 3rd party Cordova plugins because of this change so it is worth a mention. + +Up until Cordova 5.0.0 (Cordova Android platform version 4.0.0), Cordova used [Apache Ant](http://ant.apache.org/) as the primary build system to build an Android version of an app. This has now changed to [Gradle](http://gradle.org/) as the default though developers can force an Ant build using the Cordova CLI as follows: + +~~~~~~~~~~~~~~~~~~~~~~~ +cordova build android -- --ant +~~~~~~~~~~~~~~~~~~~~~~~ + +There are three major ways that switching to Gradle can affect your project: + +1. The way you specify signing information is different. See the [Packaging & Publishing tutorial for details](../tutorial-package-publish). +1. Some 3rd party plugins may now require Gradle and thus typically only work on Cordova 5.0.0 and up. In particular, plugins that modify Android build artifacts in a non-standard way can run into issues. +1. Other 3rd party plugins may not have updated to support Gradle yet and still require Ant to be used. Generally these plugins are designed for Cordova versions < 5.0.0. + +A good example of a plugin that requires Gradle is the [Crosswalk plugin](https://github.com/crosswalk-project/cordova-plugin-crosswalk-webview) we will cover a bit in this article. While at one point it also worked with Ant builds, it now errors out if you are not building with Gradle. As a result, Visual Studio 2015 now uses Gradle to build Android in Cordova 5.0.0+ instead of Ant (2015 RC still used Ant). The end result is you could hit compatibility issues with lesser known 3rd party plugins particularly if you have not updated them. + + +###Migrating an Existing Project to Use Gradle +Because of these differences you should take the following steps: + +1. If you encounter an unexpected build error specifically for Android, see if the error references Cordova plugin source code. If so, update it by removing the plugin using the "Installed" tab of the config.xml designer and re-add the plugin. If you cannot determine which plugin is causing the issue, you can opt to proactively upgrade all of them. + +2. If a plugin update doesn't solve the issue, try these steps to eliminate other factors. + 1. Create a fresh project and see if the problem reproduces. + 2. To eliminate Visual Studio as a potential culprit, you can test using a standard Cordova CLI project by entering the following in a command prompt: + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + npm install -g cordova@5.1.1 + cordova create testProj + cd testProj + cordova platform add android + cordova plugin add cordova-plugin-in-question + cordova build android + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ... replacing the Cordova version and plugin name for those that apply to your situation. You can also specify a fully qualified Git URI or filesystem path in place of the plugin name. + + 2. If the problem reproduces, you may want to contact the plugin author and let them know about the problem. Before doing so, be sure to check for existing open issue as more than likely there's already one on the plugin author's GitHub site that you can use to provide additional information. Mention that you encountered issues when using Tools for Apache Cordova but include the Cordova CLI repro for the plugin author's benefit. See the [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-troubleshoot) section of our docs for additional troubleshooting tips. + +3. If you've already added release signing information into ant.properties in your project, you'll need to place this information in a new file in your project. See the [Packaging & Publishing tutorial for details](../tutorial-package-publish) for details. + + +##Pluggable WebViews and the Crosswalk WebView for Android +An exciting new development in the Cordova Android platform is the support for what are called "pluggable WebViews." What this feature allows you to do is swap out the built in Android WebView with a completely different WebView implementation. This is a significant improvement as the Android browser and thus the WebView has been locked at a specific version without the ability to update unless you update the version of the OS on the device. This has changed in the Android OS as of 5.0 (API 22), but unlike iOS or Windows where devices can opt to upgrade and developers need only concern themselves with a few major versions of the browser, older Android devices are locked at a particular sub-revision of Android and thus the browser with no ability to upgrade the device in many cases. The end result has been a vast array of small differences between Android devices. + +[Crosswalk](https://crosswalk-project.org/) is a project that is designed to allow developers to take embed a very recent and specific version of the Chromium WebView inside their Android app. The Crosswalk WebView can be embedded in apps running on Android 4.0 and up and brings with it the significant advantage of a consistent WebView implementation across all Android device versions it supports. + +There is now a [Cordova Crosswalk plugin](https://www.npmjs.com/package/cordova-plugin-crosswalk-webview/) that takes advantage of the new pluggable WebView features in Cordova 5.0.0+ (and the Cordova Android 4.0.0 platform it uses) and makes it simple to add into your project. + +*Note: Because using the Crosswalk plugin does slow down build times given its size, we recommend developers start out building apps with the stock Android WebView on a recent device or emulator (Android 4.4+). You can then add the Crosswalk plugin later in your development cycle and make the necessary adjustments.* + +###Installing the Crosswalk Plugin from VS +To use the Crosswalk WebView plugin from Visual Studio, follow these steps: + +1. Right-click on config.xml and select "View Code" + +2. Add the following XML elements under the <widget> element: + + ~~~~~~~~~~~~~~~~~~~~~~ + + ~~~~~~~~~~~~~~~~~~~~~~ + +The next time you build, your app will be running in the Crosswalk WebView. Note that the first build for Android in particular will take a bit given the plugin does some dynamic acquisition. + +###Tips on Using the Crosswalk +If you are using the standard Android Emulator, be sure to check the **Use Host CPU** option in the AVD you create and have up to date graphics drivers installed on your system or the app will crash due to Crosswalk's support of WebGL. + +![Use Host GPU]() + +Finally, if you encounter a "Could not create the Java Virtual Machine" error, add the following environment variable to your system and restart VS to bump up Java's heap memory: + +~~~~~~~~~~~~~~~~~~~~~~ +_JAVA_OPTIONS=-Xmx512M +~~~~~~~~~~~~~~~~~~~~~~ + + +##Windows 10 Support +Historically, Windows and Windows Phone 8.1 have had a number of compatibility challenges with Cordova apps due to underlying platform differences around security rules. A [JavaScript compatibility](https://github.com/MsopenTech/winstore-jscompat) framework was released to help alleviate some of these issues on 8.1, but starting with **Cordova 5.1.1**, you can now build Windows 10 apps. In addition to supporting the new Windows Universal platform that allows a single code base and app package to be used across a number of different devices, Windows 10 also brings a number of significant improvments to Apache Cordova users. + +In particular: + +1. Elimination of the existing dynamic content restrictions in Windows 8.0 and 8.1. +2. Cordova plugin support for external hosted content through the use of the same <allow-navigation> element used by Android and iOS. +3. Support for the powerful Content Security Policy (CSP) that is also now reccomended for use with the Android and iOS Cordova platforms. See [this article for more details](./cordova-5-security.md). +4. Apps can now run in two different security modes: + 1. Remote mode: The default, flexible security mode that only has a hand full of store submission restrictions + 2. Local mode: A more secure mode that adds additional protections but disables hosted content and inline script + +These improvements mean that the Windows platform now has a flexible model compatible with Cordova platforms like Android and iOS while still providing you the tools you need to secure your app. Check out the [Cordova Windows 10](http://go.microsoft.com/fwlink/?LinkID=617471) documentation for more information on new features. + +You can follow these steps to use Cordova Windows 10 with Visual Studio: + +1. Install the [Windows 10 Tools for Visual Studio](http://go.microsoft.com/fwlink/?LinkID=617471) if you have not already. + +2. In your project, open the config.xml designer by double clicking on config.xml + +3. Click on the "Windows" tab + +4. Change the "Windows Target Version" to "Windows 10.0" + + ![Select Cordova Version]() + +That's it! Underneath the convers Cordova will switch from an 8.1 project to a new Universal App project and take care of the rest! Just use the "Debug" dropdown to deploy to a Windows 10 device, use your Windows 10 PC, or use a Windows 10 emulator. + +## More Information +* [Learn about security features in Apache Cordova 5](./cordova-5-security.md) +* [Read tutorials and learn about tips, tricks, and known issues](../Readme.md) +* [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) +* [Follow us on Twitter](https://twitter.com/VSCordovaTools) +* [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) +* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-cordova-5/cordova-5-security.md b/tutorial-cordova-5/cordova-5-security.md new file mode 100644 index 00000000..0aa43108 --- /dev/null +++ b/tutorial-cordova-5/cordova-5-security.md @@ -0,0 +1,171 @@ +#Introduction to Cordova 5 Security +One of the more confusing changes about Cordova 5 is that the updated version of the Android platform (also called Cordova Android 4.x) and iOS now follow a different, but more powerful security model designed to provide developers with the tools needed to prevent cross-site scripting attacks among other issues. A critical aspect of this security model is that **absolutely no network access of any kind is allowed without the installation of a Cordova plugin**. + +##Cordova Whitelists +The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml element used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. + +~~~~~~~~~~~~~~~~~~~~~~~ + +~~~~~~~~~~~~~~~~~~~~~~~ + +The problem with this model is you may want to be able to make an XHR to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://cordova.apache.org/announcements/2014/08/04/android-351.html) which has led to a syntax that strayed away from the original [W3C Widget spec](http://www.w3.org/TR/widgets/) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. + +###cordova-plugin-whitelist +As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allows-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allows-intent** element has been introduced specifically designed to control Android intents. + +The default Cordova CLI template has a config.xml file in it that is designed to allow the app to make external requests anywhere, allows a specific subset of intents, and prevents the WebView in the Cordova app to navigate anywhere other than local content. + +~~~~~~~~~~~~~~~~~~~~~~~ + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~ + +If we wanted to add the ability for the root WebView to navigate to www.microsoft.com, we can add this XML element: + +~~~~~~~~~~~~~~~~~~~~~~~ + +~~~~~~~~~~~~~~~~~~~~~~~ + +Note that if you simply wanted to display www.microsoft.com without giving it access to Cordova or plugin APIs, you can use the **[InAppBrowser plugin](https://github.com/apache/cordova-plugin-inappbrowser)** without adding the allow-navigation element to your config.xml file. + +There is still some variation in behavior by platform for these whitelist features based on the concerns and capabilities of the underlying native technology. + +1. **Android** supports the use of access, allow-navigation, and allows-intent. Intents are an Android specific concept. +2. **iOS** supports the use of access, and allow-navigation. +3. **Windows 10** via the Windows platform supports the allow-navigation element. The access element behaves slightly differently in that navigation is allowed to these URIs but Cordova and plugin APIs are disabled thereby reducing risk. XHR, CSS, and image access rules are intended to be controlled by a Content Security Policy (CSP) rather than specific whitelists. We'll cover more details on how to use CSPs later in this document. +4. **Windows 8.0, 8.1, and Windows Phone 8.1** via the Windows platform does support the navigating to external URIs outside of a x-ms-webview element or the InAppBrowser plugin due to fundamental platform limitations. XHR calls are always allowed to any domain. +5. The **Windows Phone 8 (WP8)** platform still uses the old definition of the access element. + +Note that if you would prefer to retain the old behavior of the access element for Android and iOS, you can install [cordova-plugin-legacy-whitelist](https://github.com/apache/cordova-plugin-legacy-whitelist) though this is intended only to be used for backwards compatibility and new apps should generally move towards using cordova-plugin-whitelist. + +###Automatically Adding the Plugin +You will also notice this default template contains the following in config.xml: + +~~~~~~~~~~~~~~~~~~~~~~~ + +~~~~~~~~~~~~~~~~~~~~~~~ + +This takes advantage of a new feature in Cordova 5.0.0+ to ensure the Cordova Whitelist plugin (whose ID is cordova-plugin-whitelist) is automatically installed if it is not present when the project is prepared for building any platform. It will automatically add the latest version of the plugin whose version number starts with 1 (1.x.x). You can also update this to be a specific version or remove this element and install the plugin yourself. + +Note that this capability can be used with any Cordova plugin and is conceptually similar to the Visual Studio specific "vs:plugin" element. We worked with the community to get it added into the core and over time we will discontinue the use of the "vs" prefix but we have left the feature in place for backwards compatibility (as Cordova 4.3.0 does not have this feature). Near term most VS documentation will recommend the use of "vs:plugin" instead. Ex: + +~~~~~~~~~~~~~~~~~~~~~~~ + +~~~~~~~~~~~~~~~~~~~~~~~ + + +##The W3C Content Security Policy (CSP) +A topic of frequent conversation for security focused developers on the web is the [W3C Content Security Policy (CSP)](http://www.w3.org/TR/CSP/) feature that is available in Chrome, Safari, and Internet Explorer Edge. CSP support is available natively to Cordova apps targeting iOS, Windows 10 and up, and Android 4.4 and up. However, you can get support back to Android 4.0 by using something called the Crosswalk WebView. See [Using Apache Cordova 5](./README.md#crosswalk) for information adding Crosswalk to your project. + +###The CSP in Cordova 5 +The CSP is a native browser capability that allows you to control exactly what content your app can access and at a very granular level. In fact, when using the CSP, you can generally keep the access origin to "*" as you'll be able to more tightly control security using the policy. + +A CSP policy is applied at a page level through a few different mechanisms, but for Cordova apps you typically use a meta tag. Here is the CSP policy on index.html in the default Cordova template: + +~~~~~~~~~~~~~~~~~~~~~~~ + +~~~~~~~~~~~~~~~~~~~~~~~ + +You will need to include a tag like this on each page you navigate to at the top level (a navigation that results in a different window.location.href). With "Single Page Apps", you generally will only need to put it on index.html, but it's worth noting that you can apply completely different security rules based on your situation by modifying this policy. For example, if you have a page that is collecting sensitive data, you may wish to strongly lock down access while keeping things more open on other pages. + +The only problem with the CSP is this: It's pretty confusing to read at first and its defaults can cause some behaviors web devs are not at all used to working around. + +You can find a [great tutorial on using the CSP in detail here](http://www.html5rocks.com/en/tutorials/security/content-security-policy/), but here are some common "gotchas" for those new to the concepts: + +1. By default, applying a CSP **disables both eval() and inline script** while the CSP policy in the **Cordova template leave inline disabled but enables eval()**. + - Disabling both eval and inline script means no script tags with JavaScript in it, no "on" event handler attributes on HTML elements, no eval(), no new Function(), etc. Disabling these features effectively makes it impossible to do cross-site scripting because there is no way to inject JavaScript anywhere that does not originate from a file. If you're property managing your whitelists, you're very secure. + + - The problem is that disabling eval() in particular can break quite a few web frameworks. + + - As a result, the CSP in the base Cordova template specifies **unsafe-eval** for **default-src** which enables JavaScript code to use eval and similar dynamic script techniques. Ex: + + ~~~~~~~~~~~~~~~~~~~~~~~ + default-src 'self' 'unsafe-eval'; + ~~~~~~~~~~~~~~~~~~~~~~~ + + - If your app and your frameworks don't need eval, remove the unsafe-eval declaration. + + - If you really need inline script, you can add the 'unsafe-inline' declaration. Of the two, inline script is actually a higher risk than eval since something as simple as using innerHTML without proper filtering can allow a hacker to add inline script. Inline script is very common, but if your app is security focused, you should avoid it. Note that the 'unsafe-inline' declaration in the Cordova template applies to style-src which enables inline CSS declarations not JavaScript. + +1. The default CSP policy in the Cordova template only allows access to JavaScript and CSS files inside the app or the same domain, not a different domain. **As a result, CDN hosted content typically cannot be referenced.** + + - This is another technique to reduce risk by stating that a given web page can only reference content from **'self'**. The end result is that cross-site scripting vulnerabilities are further reduced by preventing your web page from being hijacked to include content from an external, untrusted sourced. + + - You can loosen this restriction by listing other trusted domains. In fact, the default Cordova template lists "https://ssl.gstatic.com" as a trusted domain since Android needs it for TalkBack to function properly. + + ~~~~~~~~~~~~~~~~~~~~~~~ + default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; + ~~~~~~~~~~~~~~~~~~~~~~~ + + This above CSP policy says that content originating from the same domain ('self'), data URIs (data:), Cordova internal APIs (gap:), https://ssl.gstatic.com, and eval statments are allowed, but all others are denied. + +##Migrating an Existing Project +When you upgrade a project to Cordova 5.0.0+ from Cordova 4.3.1 or below in Visual Studio, you will want to take the following steps to ensure your app functions as you would expect. + +1. Add the whitelist plugin to your project via config.xml: + + 1. Right-click on config.xml and select "View Code" + + 2. Add the following XML elements under the <widget> element: + + ~~~~~~~~~~~~~~~~~~~~~~~ + + ~~~~~~~~~~~~~~~~~~~~~~~ + + The next time you build in Visual Studio, VS will install this version of the whitelist plugin. You can update the version number as needed. + +2. Update config.xml with the allow-intent or allow-navigation elements as needed: + + 1. If you have not already, right-click on config.xml and select "View Code" + + 2. Add the following XML elements under the <widget> element: + + ~~~~~~~~~~~~~~~~~~~~~~~ + + + + + + + ~~~~~~~~~~~~~~~~~~~~~~~ + + You should already have an <access> element in your config.xml. You can use the "Domain Access" list under the "Common" tab in the config.xml designer to add or edit your current list. + + 3. Optionally, if your app is using hosted content, or you'd prefer not to restrict where the WebView can navigate during development, you can also add the following elements: + + ~~~~~~~~~~~~~~~~~~~~~~~ + + + + ~~~~~~~~~~~~~~~~~~~~~~~ + + However, we strongly recommend narrowing down your access before releasing your app as many app stores will not accept apps that are completely open without filing for an exception and having a very good reason to do so. + +3. Due to the significant security benefits associated with using a CSP policy, we strongly recommend taking the Cordova template's CSP metatag and add it to the header of any page the app will navigate to in your app. Note that **you can use add a CSP meta tag to hosted content too.** + + ~~~~~~~~~~~~~~~~~~~~~~~ + + + + My Super Cool Cordova App + + ~~~~~~~~~~~~~~~~~~~~~~~ + + Start with the most locked down security policy you can and back away as needed. That way you'll ensure you're using the most secure practices you can from the start. + + To reiterate, **CSP support is only available on Android 4.4+ devices or Android 4.0+ when using Crosswalk.** See [Using Apache Cordova 5](./README.md#crosswalk) for information adding Crosswalk to your project. + +## More Information +* [Read more about Apache Cordova 5](./README.md) +* [Read tutorials and learn about tips, tricks, and known issues](../Readme.md) +* [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) +* [Follow us on Twitter](https://twitter.com/VSCordovaTools) +* [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) +* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-cordova-5/media/cordova-5-0.png b/tutorial-cordova-5/media/cordova-5-0.png new file mode 100644 index 0000000000000000000000000000000000000000..1d8646ecf0ff87a418016a3758fc8cb46c25eaba GIT binary patch literal 26157 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 literal 0 HcmV?d00001 diff --git a/tutorial-cordova-5/media/cordova-5-2.png b/tutorial-cordova-5/media/cordova-5-2.png new file mode 100644 index 0000000000000000000000000000000000000000..1343f82c9fe226058b4123612cd196f4d69d06ca GIT binary patch literal 8839 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

IH4p6;$nRRXqfDRKq_`he4+ zM;iOmKCclow#5d5GusE}wA?B5aRhb-JY~MIcTh{u9>|)@0M?y*o?uGjW7C+?$xFdH z8%C~f_)`Qo=g8sXvyOC9?Qi0>Ir^M=mJut|IY|b$=q6NGY*gmBPp8-H9GSFE%PNwg zv5FWcT{Hm82bRi)IjJ%L>}tfagf(C5zdP#-@#T08ZKiDRi_W*>`Jt2-%rxG_49JCvcEZNxn7AR`Kax~dtWf%`k$`&Qs#^ZJQ=T4Vb<;4u2* z+5yttF^bkX{82%5jAEfQ7dL)k=?l@44<*ygD#_yEBU_dUlv$s@daK49YCWB4srOH2 zRtCP`XtYQwXX68@7Mtt289c^qLCc^*Gh0yM{$vWZsBN&ueH-4S z1LPR7tWzDLJG@dgi`J>i3KEL9c%#@vlGGT*zq_xSshJIFJN_Gcne zSXK2f+i-QYT>;Y;6&MG~a|MhGZkp&tVpu|rqN~%@74jp1mBXUM!tA|H%C%sVT#--Q z<9I@hQ%iIl?y3#ESzT+zMK2{+>p%mMiSlH539knh-KV$A8-E0)jy_cwUL|(7RT&MD zb>GRly974dKi0`Zx{n8^#^)Qu8)IzuJr(yhp*>!A^NpL}rm0;cl!s;ui3U4<*%Tm0 zLMzk*-2Lag#2F}7i!R5qidv|!c#BJvd9*Lxc=?*Id)q){c8$a2j#neCu%Qz0qf@Dt zm@z*g+W$DI*{0U1NoY;YJ(UR&9c?XG`v`eApTpy7Imw{cb|}j?B*hi}L2)$Nc*xPJx0XW2@-x2l z!uK|NPbKLWMKj2lc+m-c?iL4#tdeaH~NL^MaUvf=!Q21 zq=n`7ysx^o^aYQuBlvO`6YL(;<* zdku9&iTm{h;rt|a*r$r=mOnjuffa3|M_7_9U4+;T&1bwECGA~ZfGXX}o7%b)RxlOC z#P}XHk3KPSD+a3kojwsv3UY5!*>5${v=}ehnQ$4bs`u&)&^q3X6J>}&iH%>%VJjuT zvuFuaKW532ZpXi1ZwG#0V%Wup)4_d!9zJ-3kNbBV)OvErn9N;`fVtuLbJ_9y`ehn3 zY>bQ~OjR6}b}F~r)v&SvCNVeZ*q&YlfJHT$jMzJS)q&zF9{^ic32b5<4fXTZ(8uin zp*D<=GGouY<|rXlKl0mdfa^c~>di&0p2`w|Qgj*VANSr`fPZ*l6Dn0aX4kjieFKUvcC6y z3QkPDz}SAK4u}2Nu4?X(4+;RuF|8jc?;!XwccRm;0{wl6me`>vw@gJ-eHMOw`*@{J z=6EHR`w>sA5rh#1>%`bsObI2Af4BO$d0fiQ+a;=H`+Flhq!;2Qvy>r4Z#E4uhI2o> znNE49OT`!BFTMpIJsC |x}o;es!0-(C{ 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 literal 0 HcmV?d00001 diff --git a/tutorial-cordova-5/media/cordova-5-7.png b/tutorial-cordova-5/media/cordova-5-7.png new file mode 100644 index 0000000000000000000000000000000000000000..4e3dbd97988843ffc8db5216b82eac78ce642345 GIT binary patch literal 25693 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 I?)2q90AD9*ng9R* literal 0 HcmV?d00001 diff --git a/tutorial-cordova-5/media/cordova-5-8.png b/tutorial-cordova-5/media/cordova-5-8.png new file mode 100644 index 0000000000000000000000000000000000000000..4921fe69a57689471d561802404c40cad4b66985 GIT binary patch literal 12963 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 literal 0 HcmV?d00001 diff --git a/tutorial-cordova-5/media/npm-local-2.png b/tutorial-cordova-5/media/npm-local-2.png new file mode 100644 index 0000000000000000000000000000000000000000..fd7c2799c01df5c2fc1767920ed4f222740bb239 GIT binary patch literal 24398 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 literal 0 HcmV?d00001 diff --git a/tutorial-gulp/gulp-ci.md b/tutorial-gulp/gulp-ci.md index 034b881f..75f37e1d 100644 --- a/tutorial-gulp/gulp-ci.md +++ b/tutorial-gulp/gulp-ci.md @@ -104,7 +104,7 @@ gulp.task("default", function () { Underneath the covers, the script will do the following: -1. First, it check **taco.json** to see if a Cordova version is specified. If not, it assumes you want Cordova 4.3.0. +1. First, it check **taco.json** to see if a Cordova version is specified. If not, it assumes you want Cordova 5.1.1. 2. Next, it checks to see if this version of cordova-lib has already been installed at a location set in the **CORDOVA\_CACHE** environment variable. If no CORDOVA_CACHE environment variable is set, the cache location will default to %APPDATA%\\cordova-cache on Windows and ~/.cordova-cache on OSX. You can also set this location programmatically using the module's configure method. diff --git a/tutorial-team-build/Jenkins.md b/tutorial-team-build/Jenkins.md index 59c9b002..c033c81d 100644 --- a/tutorial-team-build/Jenkins.md +++ b/tutorial-team-build/Jenkins.md @@ -1,11 +1,12 @@ #Using Tools for Apache Cordova with the Jenkins CI System -**This tutorial is part of a [series of tutorials](http://go.microsoft.com/fwlink/?LinkID=533743) on building Visual Studio 2015 Tools for Apache Cordova projects in a Team / CI environment and does not apply to Visual Studio 2013 CTPs.** +This tutorial is part of a [series of tutorials](./README.md) on building Visual Studio 2015 Tools for Apache Cordova projects in a Team / CI environment. +##Background [Jenkins](http://go.microsoft.com/fwlink/?LinkID=613695) is a hugely popular CI server with a large install base so using it to build your Cordova project may be the way to go if you already have it installed and running in your environment. Fortunatley Tools for Apache Cordova is designed to work with a number of different team build systems since the projects it creates are standard [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. [Gulp](http://go.microsoft.com/fwlink/?LinkID=533803) is an increasingly popular JavaScript based task runner with a large number of [useful plugins](http://go.microsoft.com/fwlink/?LinkID=533790) designed to automate common “tasks” for everything from compilation, to packaging, deployment, or simply copying files around. Both Gulp and Cordova CLI are Node.js based which makes the two highly complementary technologies. For these reasons, this tutorial will focus on the use Gulp rather than MSBuild as the primary build language for Cordova apps when using Jenkins. -**Troubleshooting Tip: Be aware that a bug in VS templates in VS 2015 RC included four json files that can cause issues if added to source control: plugins/android.json, plugins/remote_ios.json, plugins/windows.json, and plugins/wp8.json.** Adding these files to source control can result in a build that appears to succeed but is missing plugin native code. They should only be included if the "platforms" folder is also checked in which is not recommended. Simply remove these files from source control to resolve the issue. +**Troubleshooting Tip:** Be aware that we recommend against adding the "platforms" folder or the following json files in the "plugins" folder into source control: android.json, ios.json, remote_ios.json, windows.json, and wp8.json. See "What to Add to Source Control" in the [general team build tutorial](./README.md) for additional details. ##Initial Setup Since the build process we will describe here is not directly dependent on MSBuild or Visual Studio, you have two options for installing pre-requisites on Windows: @@ -124,9 +125,9 @@ Next you will need to set the following environment variables if they have not a | **Variable** | **Required For** | **Purpose** | **Default Location (Visual Studio 2015)** | |:-------------------|:-----------------------------------------|:-----------------------------------------|:------------------------------------------| -| **ANDROID\_HOME** | Android | Location of the Android SDK | %PROGRAMFILES(x86)%\\Android\\android-sdk | -|**JAVA\_HOME** | Android | Location of Java | %PROGRAMFILES(x86)%\\Java\\jdk1.7.0\_55 | -| **ANT\_HOME** | Android when building using Ant (not Gradle) | Location of Ant | %PROGRAMFILES(x86)%\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | +| **ANDROID\_HOME** | Android | Location of the Android SDK | C:\\Program Files (x86)\\Android\\android-sdk | +|**JAVA\_HOME** | Android | Location of Java | C:\\Program Files (x86)\\Java\\jdk1.7.0\_55 | +| **ANT\_HOME** | Android when building using Ant (not Gradle) | Location of Ant | C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | | **GRADLE\_USER\_HOME** | Optional | Overrides the default location Gradle build system dependencies should be installed when building Android using Cordova 5.0.0+ | If not specified, uses %HOME%\\.gradle on Windows or ~/.gradle on OSX | | **CORDOVA\_CACHE** | Optional | Overrides the default location used by the [sample build script](http://go.microsoft.com/fwlink/?LinkID=533736) to cache installs of multiple versions of Cordova. | If not specified, uses %APPDATA%\\cordova-cache on Windows and ~/.cordova-cache on OSX | @@ -236,4 +237,4 @@ The OSX version of the build is similar but adds one additional requirement: Unl * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) * [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) -* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file +* [Email us your questions](mailto:/vscordovatools@microsoft.com) diff --git a/tutorial-team-build/RC/TFS2013.md b/tutorial-team-build/RC/TFS2013.md new file mode 100644 index 00000000..7e089b84 --- /dev/null +++ b/tutorial-team-build/RC/TFS2013.md @@ -0,0 +1,182 @@ +#Using Tools for Apache Cordova 2015 RC with Team Foundation Services 2013 +**This article is specific to using Tools for Apache Cordova 2015 *RC* with TFS 2013. See [this article for details on Visual Studio 2015 RTM or later](../TFS2013.md).** + +Tools for Apache Cordova is designed to work with a number of different team build systems since the projects it creates are standard [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. However, you may want to use Team Foundation Services 2013 build agents. + +It is important to note that as a general recommendation, we encourage the use of [TFS 2015's next generation cross-platform build system](http://go.microsoft.com/fwlink/?LinkID=533772) and [Gulp](http://go.microsoft.com/fwlink/?LinkID=533742) based build capabilities rather than TFS 2013 or MSBuild since this provides the ability build directly from TFS on Windows or OSX. See the [TFS 2015 tutorial](http://go.microsoft.com/fwlink/?LinkID=533771) for details. Visual Studio Online's support for building Cordova apps will focus on the Gulp based TFS 2015 approach rather than MSBuild. + +This tutorial will describe how to configure TFS to build a Tools for Apache Cordova project using MSBuild and the steps provided here will generally apply to using MSBuild with TFS 2015 as well. + +**Troubleshooting Tip: Be aware that a bug in VS templates in VS 2015 RC included four json files that can cause issues if added to source control: plugins/android.json, plugins/remote_ios.json, plugins/windows.json, and plugins/wp8.json.** Adding these files to source control can result in a build that appears to succeed but is missing plugin native code. They should only be included if the "platforms" folder is also checked in which is not recommended. Simply remove these files from source control to resolve the issue. + +##Initial Setup +Before getting started with setting up your TFS Build Agent, you should install Visual Studio 2015 with the Tools for Apache Cordova option. You will also want to select the Windows / Windows Phone 8.1 tools and the Windows Phone 8.0 tools if you want to build for any of these platforms. From there you will want to configure a build agent on the server you have installed Visual Studio 2015. + +- See [Tools for Apache Cordova documentation](http://go.microsoft.com/fwlink/?LinkID=533794) for setup details on Visual Studio 2015. +- See [Team Foundation 2013 Build documentation](http://go.microsoft.com/fwlink/?LinkID=533786) for setup details on Team Foundation Services 2013. + +Note that you may also use a stand-alone build agent integrated with Visual Studio Online. + +**Troubleshooting Tip:** See ["Internet Access & Proxy Setup" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) if your build servers have limited Internet connectivity or require routing traffic through a proxy. + +##Common Build Definition Parameters & Environment Variables +###Updated Build Process Template +Before you get started, it's important to note that you will need to use v14 of MSBuild when building a Tools for Apache Cordova project. Build definition templates that ship with TFS 2013 support v11 and v12. As a result, you will need to create a modified TFS Build Process Template for TFS to use MSBuild v14.0. To do this, you can simply download the v12 template (or your own custom one) and append ToolVersion="14.0" to the end of the **RunMSBuild** element and upload it as a new template. Ex: + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +See [TFS 2013 documentation](http://go.microsoft.com/fwlink/?LinkID=533787) for additional information on modifying build process templates. + +You can then [create a build definition](http://go.microsoft.com/fwlink/?LinkID=533788) for your project and select this updated template. + +###Getting Resulting Packages to Land in the Drop Folder + +To get the resulting packages from the Cordova build process to land in the configured TFS drop folder, you will need to add in a simple post-build PowerShell script to your project. + +First, create a PowerShell script called postbuild.ps1 in your project under a solution folder that contains the following script: + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +$packages = gci $Env:TF_BUILD_SOURCESDIRECTORY -recurse -include $("bin") | ?{ $_.PSIsContainer } | foreach { gci -Path $_.FullName -Recurse -include $("*.apk", "*.ipa", "*.plist", "*.xap") } +foreach ($file in $packages) { + Copy $file $Env:TF_BUILD_BINARIESDIRECTORY +} +gci $Env:TF_BUILD_SOURCESDIRECTORY -recurse -include $("AppPackages") | ?{ $_.PSIsContainer } | Copy -Destination $Env:TF_BUILD_BINARIESDIRECTORY –Recurse -Force +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +This will copy any .apk, .ipa, or .plist file from the project's "bin" folder to the drop location and will also grab generated AppPackages under the platforms/windows/AppPackages folder from your project. Place this script under a solution folder such as "build". + +![Solution with Build Script]() + +Now, create a build definition if you have not done so already and add the PowerShell script as a post-build script under "Process =\> Build =\> Advanced =\> Post-build script path". The file will be under the solution so you will need include the solution folder name in the path. You will also want to ensure your build definition with the output location (Process =\> Build =\> 4. Output location) as "SingleFolder" rather than AsConfigured. + +![Build Definition with PowerShell Script]() + +##Common Environment Variables +There are a set of environment variables that need to be made available to MSBuild. These can either be setup on your machine as system environment variables or using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). + +**Troubleshooting Tip:** Use full, absolute paths and be sure to remove any leading or trailing spaces in the your variable paths! Also note that whenever you set a system environment variable you will need to restart the build service to get it to pick up the change. + +| **Variable** | **Required For** | **Purpose** | **Default Location (Visual Studio 2015)** | +|:------------------|:-----------------------------------|:-----------------------------------------|:---------------------------------------------------| +| **MDAVSIXDIR** | Any operation | Location of the Tools for Apache Cordova VSIX. With Visual Studio 2015, its location is always the same. In VS 2013, you will need to search for the VSIX by finding a folder containing the "vs-mda-targets" folder. | C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\Common7\\IDE\\Extensions\\ApacheCordovaTools | +| **NODEJSDIR** | Any operation | Location of Node.js | C:\\Program Files (x86)\\nodejs | +| **NPMINSTALLDIR** | Any operation | Location to install npm packages when building. | C:\\Users\your-user-here\\AppData\Roaming\\npm | +| **LANGNAME** | Any operation | Language used for messaging from node scripts. | en-us | +| **BUILDVERBOSITY**| Any operation | Logging level for the Node.js portion of the build.
Set using the /p MSBuild argument in your build definition (Process =\> Advanced =\> MSBuild Arguments). | Normal | +| **GIT\_HOME** | Optional: Plugins Acquired via Git | Location of the Git Command Line Tools | C:\\Program Files (x86)\\git | +| **GRADLE\_USER\_HOME** | Optional | Overrides the default location Gradle build system dependencies should be installed when building Android using Cordova 5.0.0+ | If not specified, uses %HOME%\\.gradle | + +## Building Android + +If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. + +###Android Environment Variables + +In addition to the common environment variables mentioned above, the following variable can either be set as system environment variables or semi-colon delimited using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). + +**Note that whenever you set a system environment variable you will need to restart the build service to get it to pick up the change.** + +| **Variable** | **Required For** | **Purpose** | **Default Location (Visual Studio 2015)** | +|:------------------|:-----------------|:----------------------------|:------------------------------------------| +| **ANT\_HOME** | Android | Location of Ant | C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | +| **ANDROID\_HOME** | Android | Location of the Android SDK | C:\\Program Files (x86)\\Android\\android-sdk | +| **JAVA\_HOME** | Android | Location of Java | C:\\Program Files (x86)\\Java\\jdk1.7.0\_55 | + +##Android Build Definition Settings + +In addition to your other build definition settings, you will want to use the following build parameter values. + +| **Parameter** | **Purpose** | **Value** | +|:-----------------------------------------|:-----------------------------------------|:-----------------------------------------| +| **Process =\> Items To Build =\> Configurations to Build**| Platform to build| **Configuration: Debug or Release**
**Platform: Android** | +| **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: emulator, ripple, or device. | **/p:DebuggerFlavor=AndroidDevice** | +  +##Building iOS +If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. In addition you will need to have a remote build agent configured on an OSX machine. See [Tools for Apache Cordova documentation](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +**Troubleshooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. + +###iOS Environment Variables and Cert Setup +In addition to the common environment variables mentioned above, the following variable can either be set as system environment variables or semi-colon delimited using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). + +Using an environment variable is most useful when you want a single build definition to be able to be used with different remote build agents originating from different TFS build agents and thus do not want to have the agent URI in the build definition itself. + +| **Variable** | **Required For** | **Purpose** | **Example** | +|:-------------------------|:-----------------|:-----------------------------------------|:-----------------------------------------| +| **iOSRemoteBuildServer** | iOS | Host and port for iOS remote agent. | https://chux-mini.local:3000 | +| **iOSRemoteSecureBuild** | iOS | Indicates whether a secure connection should be used to connect to the agent | true | + +By far the easiest way to import the client SSL certificate used for secure remote build is to simply start up Visual Studio and configure the remote agent there. This will import the client SSL cert into your local certificate store so it can be used during build. See [Tools for Apache Cordova documentation](http://go.microsoft.com/fwlink/?LinkID=533745) for details. + +**Note: You also need to configure the TFS build service on your build server to run using the same user that you used to log in and configure Visual Studio.** + +![Build Service with User]() + +#### Manual Import of SSL Cert +However, it is also possible to manually import the SSL cert by following these steps: + +1. Generate a security PIN. This automatically occurs the first time you start up the remote build agent but you can also generate a new one using the following command: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + vs-mda-remote generateClientCert + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +2. Get the generated .p12 file from the agent using the following URI in a browser using the host, port, and PIN from the agent output. **Be sure you start vs-mda-remote if it is not running before accessing this URI.** + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + https://:/certs/ + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +3. Ignore the SSL security warning + +4. Download the .p12 file and save it. **Note: For security reasons, this PIN will be automatically invalidated after you download the file.** You may, however, use the cert file on multiple machines if needed. + +6. You now simply open the p12 file from the file system to import the cert using the Certificate Import Wizard that appears. + +###iOS Build Definition Settings + +In addition to your other build definition settings, you will want to use the following build parameter values. + +| **Parameter** | **Purpose** | **Value** | +|:-----------------------------------------|:-----------------------------------------|:-----------------------------------------| +| **Process =\> Items To Build =\> Configurations to Build** | Platform to build | **Configuration: Debug or Release**
**Platform: iOS** | +| **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: simulator, ripple, or device. | **/p:DebuggerFlavor=iOSLocalDevice** | + +##Building Windows / Windows Phone 8.1 +If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. + +###Windows 8.1 Build Definition Settings +In addition to your other build definition settings, you will want to use the following build parameter values. + +| **Parameter** | **Purpose** | **Value** | +|:-----------------------------------------|:-----------------------------------------|:-----------------------------------------| +| **Process =\> Items To Build =\> Configurations to Build** | Platform to build | **Configuration: Debug or Release**
**Platform: One or more of the following depending on the chipsets you need to support:**
Windows-AnyCPU
Windows-ARM
Windows-x64
Windows-x86 | +| **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: simulator or device. | **/p:DebuggerFlavor=WindowsLocal** | + +###Windows Phone 8.1 Build Definition Settings +In addition to your other build definition settings, you will want to use the following build parameter values. + +| **Parameter** | **Purpose** | **Value** | +|:-----------------------------------------|:-----------------------------------------|:-----------------------------------------| +| **Process =\> Items To Build =\> Configurations to Build** | Platform to build | **Configuration: Debug or Release**
**Platform: Windows Phone (Universal)** | +| **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: emulator or device. | **/p:DebuggerFlavor=PhoneDevice** | + +##Building Windows Phone 8.0 +If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. + +###Build Definition Settings +In addition to your other build definition settings, you will want to use the following build parameter values. + +| **Parameter** | **Purpose** | **Value** | +|:-----------------------------------------|:-----------------------------------------|:-----------------------------------------| +| **Process =\> Items To Build =\> Configurations to Build** | Platform to build | **Configuration: Debug or Release**
**Platform: Windows Phone 8** | +| **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: emulator or device. | **/p:DebuggerFlavor=PhoneDevice** | + +## More Information +* [Learn about other Team Build / CI options](../README.md) +* [Read tutorials and learn about tips, tricks, and known issues](../../Readme.md) +* [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) +* [Follow us on Twitter](https://twitter.com/VSCordovaTools) +* [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) +* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-team-build/RC/TFS2015.md b/tutorial-team-build/RC/TFS2015.md new file mode 100644 index 00000000..1a59a9a8 --- /dev/null +++ b/tutorial-team-build/RC/TFS2015.md @@ -0,0 +1,191 @@ +#Using Tools for Apache Cordova with Team Foundation Services 2015 RC +**This article is specific to using Tools for Apache Cordova 2015 with TFS 2015 *RC*. See [this article for details on Visual Studio Online or TFS 2015 RTM or later](../TFS2015.md).** + +Tools for Apache Cordova is designed to work with a number of different team build systems since the projects it creates are standard [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. Team Foundation Services 2015 provides a new [cross-platform agent](http://go.microsoft.com/fwlink/?LinkID=533789) and [Gulp](http://go.microsoft.com/fwlink/?LinkID=533742lp) based build capabilities that enables TFS to build directly on Windows or OSX which is a critical capability Cordova based development. In addition, Gulp also enables you to easily add in a large number of "[plugins](http://go.microsoft.com/fwlink/?LinkID=533790)" to perform useful build tasks in environments that you do not control directly like Visual Studio Online. + +For these reasons, this tutorial will focus on the use of the cross-platform agent and Gulp rather than MSBuild as the primary build language for Cordova apps. If you still need to use the legacy XAML / MSBuild based approach, see the [TFS 2013](http://go.microsoft.com/fwlink/?LinkID=533770) tutorial for details on setup. The instructions generally still apply to TFS 2015. + +**Troubleshooting Tip: Be aware that a bug in VS templates in VS 2015 RC included four json files that can cause issues if added to source control: plugins/android.json, plugins/remote_ios.json, plugins/windows.json, and plugins/wp8.json.** Adding these files to source control can result in a build that appears to succeed but is missing plugin native code. They should only be included if the "platforms" folder is also checked in which is not recommended. Simply remove these files from source control to resolve the issue. + +##Initial Setup +Since the build process we will describe here is not directly dependent on MSBuild or Visual Studio for Android, you have two options for installing pre-requisites on Windows: + +1. Install Visual Studio 2015 and select the Tools for Apache Cordova option and let it install the pre-requisites for you + +2. Manually install only the pre-requisites needed for the specific platforms you intend to build. For example, you do not need to install Visual Studio at all if you only intend to target Android. See "Installing Dependencies" in the [Building Cordova Apps in a Team / Continuous Integration Environment](http://go.microsoft.com/fwlink/?LinkID=533743) tutorial for details. + +Next you will need to install the Windows build agent to build Android, Windows, or Windows Phone, and the [cross-platform build agent](http://go.microsoft.com/fwlink/?LinkID=533789) on an OSX machine if you intend to build iOS. See [TFS 2015 documentation](http://go.microsoft.com/fwlink/?LinkID=533772) for detailed instructions on configuring the agent for use with an on premise TFS 2015 instance or Visual Studio Online. + +**Troubleshooting Tip:** See ["Internet Access & Proxy Setup" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) if your build servers have limited Internet connectivity or require routing traffic through a proxy. + +###Visual Studio Online +As of this writing, you can build Cordova apps targeting Android, Windows, and Windows Phone using the Hosted Agent Pool in Visual Studio Online. This allows you to build without setting up a Windows build agent on premise. iOS builds are not yet available. + +When using the Hosted Agent Pool in Visual Studio Online (VSO), all pre-requisites will already be installed and Node.js will be in your path. However, Apache Ant, required for building Android with Cordova 4.3.0 and below, will not be in your path. Fortunately you can resolve this issue in a few simple steps. We will cover these details step-by-step later in this tutorial. + +###Meet the Cross-Platform Build Agent +Since it is a new capability, let's pause and briefly highlight the new TFS [cross-platform build agent](http://go.microsoft.com/fwlink/?LinkID=533789) we will be using in this tutorial for building iOS on OSX since setup is different than traditional TFS build agents. The agent is a Node.js based service that uses a HTTPS connection to your TFS 2015 server to fetch work. As a result, your OSX machine only needs to have HTTP access to your TFS instance but not the other way around. This makes setup and configuration quite simple. The agent is for use with TFS 2015 and Visual Studio Online's [next generation build system](http://go.microsoft.com/fwlink/?LinkID=533772), not the legacy XAML/MSBuild based system. + +The pre-requisites in this case are simple: Your OSX machine needs to have Node.js and Xcode installed. Simply open the OSX Terminal app and follow the [setup instructions](http://go.microsoft.com/fwlink/?LinkID=533789). The agent will automatically register itself with TFS when you start up the agent for the first time. + +Because of its design, you can also easily use an **on-premise OSX machine with Visual Studio Online.** The OSX machine simply needs to have HTTP access to your VSO domain URI. You do not need a VPN connection and VSO does not need access to the OSX machine. Simply enter the your VSO project's domain URI when prompted during agent setup (Ex: "https://myvsodomain.visualstudio.com"). All other setup instructions apply directly. + +##Environment Variables +You should set the following environment variables if they have not already been configured. Note that you can also set these in the "Variables" section of your build definition if you would prefer. + +| **Variable** | **Required For** | **Purpose** | **Default Location (Visual Studio 2015)** | +|:-------------------|:-----------------------------------------|:-----------------------------------------|:------------------------------------------| +| **ANDROID\_HOME** | Android | Location of the Android SDK | %PROGRAMFILES(x86)%\\Android\\android-sdk | +|**JAVA\_HOME** | Android | Location of Java | %PROGRAMFILES(x86)%\\Java\\jdk1.7.0\_55 | +| **ANT\_HOME** | Android when building using Ant (not Gradle) | Location of Ant | %PROGRAMFILES(x86)%\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | +| **GRADLE\_USER\_HOME** | Optional | Overrides the default location Gradle build system dependencies should be installed when building Android using Cordova 5.0.0+ | If not specified, uses %HOME%\\.gradle on Windows or ~/.gradle on OSX | +| **CORDOVA\_CACHE** | Optional | Overrides the default location used by the [sample build module](http://go.microsoft.com/fwlink/?LinkID=533736) to cache installs of multiple versions of Cordova. | If not specified, uses %APPDATA%\\cordova-cache on Windows and ~/.cordova-cache on OSX | + +Note that you can opt to pre-populate the GRADLE_USER_HOME and CORDOVA_CACHE locations with the versions of Cordova and its dependencies you want to use by updating the [prep-cache PowerShell script](https://github.com/Chuxel/taco-team-build/tree/master/samples/prep-cache) in the samples directory of the sample build module GitHub repo. + +###Setting Your Path +The following will also need to be in your path: +- **Node.js** should already be in your path on OSX simply by the fact that you've setup the cross-platform build agent, but if it is not in your path on Windows you will want to be sure it is configured for use. The default location of Node.js on Windows is **%PROGRAMFILES(x86)%\nodejs**. +- **%ANT_HOME%\bin** should be added to your path if you are using a version of Cordova < 5.0.0 or have specified the "--ant" build option + +When using the Hosted Agent Pool in Visual Studio Online (VSO), all other pre-requisites will already be installed and these environment variables will be set. Node.js will be in your path but Apache Ant, required for building Android with Cordova 4.3.0 and below, will not be in your path. Fortunately you can resolve this issue in a few simple steps. We will cover these details in the "Build Definition for Windows" section below. + +##Project Setup & Build Definitions +###Adding Gulp to Your Project +Using Gulp in a team environment is fairly straight forward as you can see in the detailed [Gulp tutorial](http://go.microsoft.com/fwlink/?LinkID=533742). However, to streamline setup, follow these steps: + +1. Take the sample "gulpfile.js" and "package.json" file from the "samples/gulp" folder [from this GitHub repo](http://go.microsoft.com/fwlink/?LinkID=533736) and place them in the root of your project + +2. Check these two files into source control with your project + +From here you can modify gulpfile.js and add other gulp plugins. The [Gulp tutorial](http://go.microsoft.com/fwlink/?LinkID=533742) provides additional detail on what the gulpfile does and how to wire Gulp tasks as "hooks" into Cordova build events. + +###Creating Your Build Definitions +We'll assume for the purposes of this tutorial that we want to build our Cordova app for Android, iOS, and Windows. The Windows Cordova platform can only be built on Windows and iOS can only be built on OSX. As a result, we'll need the ability to be able to queue a build that can target one of these two operating systems. + +There are two ways that this can be accomplished: + +1. Setting up separate build queues for OSX vs Windows machines and then queueing the same build definition in the appropriate build queue based on the desired platform + +2. Using the concept of a "demand" in two separate build definitions to route the work to the correct OS from the same queue + +For the sake of this tutorial, we'll cover option 2. The sample "gulpfile.js" assumes you want to build Android, Windows, and Windows Phone on Windows and iOS on OSX. Technically you could also opt to have Android built on OSX but we will not cover that in detail in this tutorial. + +#### Build Definition for Windows +**Note:** *For this tutorial we have opted to use the "Command Line" build task since as of this writing the "Npm install" and "Gulp" build tasks were not available from the Windows agent. You can opt to use these build tasks instead and this tutorial will be updated as these features come on-line.* + +Detailed instructions on creating build definitions in TFS 2015 can be found in [its documentation](http://go.microsoft.com/fwlink/?LinkID=533772), but here are the specific settings you will need to use to configure a build. + +1. Depending on the version of TFS 2015 you are using, you may need to click on the **BUILD.PREVIEW** menu option to access the next generation TFS build system. + + ![BUILD.PREVIEW]() + +2. Create a new build definition and select "Empty" as the template. We'll start out targeting platforms that can be built on Windows so give the build definition a name that indicates that this is the case. + +3. Now we will configure the build definition to install any Gulp or npm package dependencies your build may have. + 1. Under the "Build" tab, add a new build step and select **Command Line** from the **Utility** category + 2. Use the following settings: + - **Tool:** cmd + - **Arguments:** /c npm install + - **Advanced =\> Working Directory**: Location of the Cordova project itself inside your solution (not the solution root). + - **Advanced =\> Fail on Standard Error**: Unchecked. + + ![Windows Build Definition - npm]() + + We need to use cmd.exe here due as npm is a batch file rather than an executable and thus is not found by the Command Line build task. This will be resolved in future updates. + +4. Next we'll configure Gulp itself. + + 1. Under the "Build" tab, add a new build step and select **Command Line** from the **Utility** category. + 2. Use the following settings: + - **Tool:** node + - **Arguments:** node_modules/gulp/bin/gulp.js + - **Advanced =\> Working Directory**: Location of the Cordova project itself inside your solution (not the solution root). + - **Advanced =\> Fail on Standard Error**: Unchecked. + + ![Windows Build Definition - gulp]() + +5. Next we need to ensure that this particular build runs on Windows rather than OSX. Under the "General" tab, verify a demand that "Cmd" exists is present. If not, add one. + + ![Windows Build Definition - Demand]() + +6. As an optional step, you can configure your build to upload the resulting build artifacts to your TFS or VSO instance for easy access. The sample gulpfile.js script places the resulting output in the "bin" folder to make configuration simple. **TFS 2015 RC on-premise installs vary here slightly.** + + For **Visual Studio Online and post-RC TFS 2015** releases: + + 1. Under the "Build" tab, add a new build step and select **Publish Artifact** from the **Build** category. + 2. Use the following settings: + - **Copy Root**: Location of the Cordova project itself inside your solution (not the solution root). + - **Contents:** bin/* + - **Artifact Name:** bin + - **Artifact Type:** Server + + ![Windows Build Definition - Drop location]() + + For **TFS 2015 RC** on-premise installs, go to the "Options" tab and enter the following information: + - **Copy to Staging Folder:** Checked + - **Copy to Staging Folder =\> Search Pattern:** \*/bin + - **Create Build Drop:** Checked + - **Create Build Drop =\> Drop location:** Server + + +Finally, click the "Queue build..." button to validate your setup. You'll see a real-time console view of your build progressing so you can quickly fine tune your definition. + +That's it for Windows! You're now able to build using the Android, Windows, and Windows Phone 8 (WP8) Cordova platforms. + +####Using the Hosted Agent Pool in Visual Studio Online +As of this writing, you can build Cordova apps targeting Android, Windows, and Windows Phone using the Hosted Agent Pool in Visual Studio Online. This allows you to build without setting up a Windows build agent on-premise. iOS builds are not yet available. + +When using Hosted build agents in Visual Studio Online (VSO), Node.js will already be in your path but Ant will not. Fortunately you can resolve this issue in a few simple steps as all of the other required environment variables will be set for you. + +1. Create a batch file called "setenv.cmd" and place it in a solution folder with the following contents: + + ~~~~~~~~~~~~~~~~~~~~~~~~~~ + @SET PATH=%PATH%;%ANT_HOME%\bin + ~~~~~~~~~~~~~~~~~~~~~~~~~~ + +2. Check this into source control with the rest of your project. + + ![setenv.cmd in solution]() + +3. Next, under the "Build" tab in your Windows Build Definition, add a new build step, select **Batch Script** from the **Utility** category, and enter the following settings: + + - **Path:** setenv.cmd + - **Modify Environment:** Checked. + +4. Make this the first build step in your build definition. + + ![Windows Build Definition - setenv.cmd]() + +You are now ready to go in VSO! + +#### Build Definition for OSX +Now let's create a version of this same build definition to target iOS that will run on a configured cross-platform agent on OSX. + +1. Right click on the Windows build definition and select "Clone." Once you save you should give this definition a name that indicates it's the OSX build. + +2. Next we need to update our call to "npm install" to be OSX friendly. + 1. Select the existing "Run cmd" Command Line build step + 2. Update the following settings: + - **Tool:** npm + - **Arguments:** install + + ![OSX Build Definition - Update npm install]() + +3. Now we need to add a demand that will route builds to OSX machines rather than Windows. Under the "General" tab, remove the "Cmd" demand if present and add a demand that "xcode" exists. + + ![OSX Build Definition - Demand]() + +You are now all set! You can configure either of these build definitions further as you see fit including having them automatically fire off on check-in or adding other validations. + +**Troubleshooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. + +## More Information +* [Learn about other Team Build / CI options](../README.md) +* [Read tutorials and learn about tips, tricks, and known issues](../../Readme.md) +* [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) +* [Follow us on Twitter](https://twitter.com/VSCordovaTools) +* [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) +* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-team-build/RC/media/tfs2013-1.png b/tutorial-team-build/RC/media/tfs2013-1.png new file mode 100644 index 0000000000000000000000000000000000000000..9f3c9a4e0675dceb869961b8f85d7d614328ebf8 GIT binary patch literal 19489 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 literal 0 HcmV?d00001 diff --git a/tutorial-team-build/RC/media/tfs2013-2.png b/tutorial-team-build/RC/media/tfs2013-2.png new file mode 100644 index 0000000000000000000000000000000000000000..c7e25c4dc3197cc202786053be56ed0964beaf77 GIT binary patch literal 79785 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 Me$K|U+{7dDPjiLW9smFU literal 0 HcmV?d00001 diff --git a/tutorial-team-build/RC/media/tfs2013-3.png b/tutorial-team-build/RC/media/tfs2013-3.png new file mode 100644 index 0000000000000000000000000000000000000000..7724925f3bc6b6814f46bcf96c25ca3c5255425c GIT binary patch literal 34629 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�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 literal 0 HcmV?d00001 diff --git a/tutorial-team-build/RC/media/tfs2015-2.png b/tutorial-team-build/RC/media/tfs2015-2.png new file mode 100644 index 0000000000000000000000000000000000000000..dfcfe5ccabc3746d9a75bb30046fc205e426793d GIT binary patch literal 46720 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 K)XY=2efUppL%ibv literal 0 HcmV?d00001 diff --git a/tutorial-team-build/RC/media/tfs2015-3.png b/tutorial-team-build/RC/media/tfs2015-3.png new file mode 100644 index 0000000000000000000000000000000000000000..e4b89154fd5eca11e53d0faf7f9748a67d87d9b5 GIT binary patch literal 22558 zcmdSBXH-*dv@RMyR1_7Es(|o;VCaZ6LsbDGlpv7Mi-JgRp?4cy2oQ=w=sh%%-YxXr zLX&_(AoNJDfwTO|-s6rl&fRzHd&W5T{$Mc@7Axo3N1eO1S(eGR*5@gCFRX#lF#gZBau)j zi_%Jri0lV$CxaSt891{4pF7&jY%TPNG#|`i{{R_OhKPdYc1LxS%zT%XnN4@{q?(`$ zSjIQi9;;)F0($U-?fB@;m7=mz{?tBi{)-9dnZTYa98LBrh-D3Y^XbwlaFHd4Qi$#L zVjq?Ghp$l^v;z92vMxU!;0m?W69o;Me5-nr38^Iid<%3@(~X-qhgd3KV$JerA*sAVyahtfN+Qq*jBV#{9$MzvuTI1 zV`xGqO@_b^7&#fI0mJeO zMewOX)HtaGu6z0BUuLwxs`c!So6nBRM(9oX1=1okc**^BphRKQDZcN^{Uxk!2&ntJ zDfn@xrf$IT_gTGXv&{ii=b~g2S-)Z`?QmG^ur#Z*PA< zbL)O#%#LxoUsh5)nvavbF>XHWqTdAt4HhrD=?vx>D)B_wolr!=1lZWSJ&m5{gI(&$ zGCK^T1u4G$RL>?qSyc_$35UpnKd=zDemOjWbd44iz!5KkG3P;j$sHK(8R>iXbZ~wy z&lYnM1oVYX>npL9h7F$Uzionz8_l~5Y#lMsA)$29#`)}))8@lcIki*wlRnEHl2C#3M1NT=& z9DNUMs?LFgy|>fQ7*?!W5mtlty3z&5zF1|UwrhEEVB5H`KO^|MrF@vPz0 zi)Siuy&I$#DvcodPbE=pj%;~qElHw1y=Ioaro5`jO;f*dU24B+1E6$K^rA63(h8als`cb&-5g;_=Ebt;jH@D`KIrVms!O>HaV6&cnxzYizW{G_S7I1S&VUOaU%AxP|$dSR5JHrE-xlcTnbCZ~8dh16fV0Rh2r$pzWN0+3oW#q)a(*Ld@KQ_OiWy%B?hvEk521b%&`tX%~l6^9!uD>R88b zN7=kUNGP6{*OW-YjLsJp53#PTwa3Vn*LUuY2o zfjXJEzN0K;stKrP5F%BD#*O$$_9)0qk>%QP7K<_CLanoXP!1pJ(f`#s2(2c zn5sDn2?gRWN@J!JKb<2^t44*QO=J750#K?s%F^97_QiefCRAE08JdST zzT1ja*$)=}VozWuzDFZ#ihJ&?x>vo0L7-iWeNuAkTN3+?(j6FvX9a`JP(*$%Y={aZ ztRY63v>|;VDMkU;y#O1{{OyS&wq9)o%}AXj#Ih&rh-dwFpnm;73x;Uuu)g82|s)Y<=HDpGb>?Y8u$#~du2cA#J6NH znm;nnHu6W~;v=UrxkQW2x|YOSia?-LNt+5~>cYC$`NtQzFC?2Ghe?6tTwZ2rWnKxo z1kj%;vl#faP@?C7+(z;5t$nuwSnjtY9+O;E)|T9fx_%mnCk-zO_#Gb`ogI~7ciIPD za6NxMlS4Y(zP~B}4*#US*_9d~L$>s8lh8CiZd6G@9);Tl4lWevvmV@A|B6brTkuEo znYKX-OrOisc5M?d+)bDWBj08FvcxBZl#F+DE&e6)RV`s9?ZEN?D`E=>$m)_^{bW10 zIGb9e0pi@tD>Jf--1z=k08A{Hk7!$0Rh~)1hVuWzoLt~4lK8-Kkn32W3|!qTC|@Rh z$`bo}PCsdOXe&Fn+}A*!A)UZkuZ&LU!*nv`nt983mk8xksqh3POG|!T7j5;8 zV&xUyc*!XW^C#(3-!4OD&)>3@S1{5jzj7;V3{As5pi9VM*HV^g`c$Q_z7&r}4#v(N zP1CoT2kcO~H4(TMIIlUMS*j+LvTOV0V{%G1ujqhYF1p1TxvQ9bdLF((zuwYQ?2@7B zx~fCz<%x)By$u)mfi4Uz@<0`Y^&y8Yx zBi?dUt32!R%qBw$*M0c7((BrI^cKBDN1lx~B70Pb11Nr-P`R`S&(zYy!8G*fR)cv^ zq4&$2!R*9NX(_<0(P^_RwVh}z* zqReca`|>cGE>*pHAxcI7$_rVjeZtM&^`X7N4Fco~Ewh)4<9ek2<8HU)BY_3phJuvl zRoV!!M(T#Y9jXvMC@lVl&^ro)6!)kgO%LvvB4!Fk@&euBcsUBNY}w`AHzNe8sHkru zP)uGUfjCWRq0c|Ro#XX>im)A8*5TTOPkESW2?@2Qz6t4wy$DWO%4lMs%tEg9sC!HT zp>Vd0SOxPIqLz8Fn8HyKifp{B92f}c4LMc81_k7aulMGvA&8CQc{Sb zYgeqig;`Bk)|snkGW_?uytpzNE+TcNO?T*r_1$l%!iHaO_clA)@F1EhzRb)V=}hN% z+@t)ob?A4U_!XS*-DW?lL(KBN{E4$JhDCw!jA@cLC}5}b7H;w30pPv1*PL4xg0VBS zO_$XXwz+3Fvp=&1!5U0f-r(fGeKz-JoA1(UF6IO}gG`SGMkI_<2)>Qa1ZObZSf;M0 z=dP}^M(HJxc(M}NXXX4x7ZxAFjGj6-FWXXP|Lztvtq1rs{K-RPgcWTgw!Okg;0}3l zYGc9LC0ZfhRCxCb7dVse8ZoCJ!UQ>Qyv>3-8&+I?XsVLRO#1ZWM%ys+ z5F2~kPJ6bVMBebP#w%r#96i&v=B}9$TKbK4Q+~j8En4gtTDn=%tbe)arcb|@vJI0u z3^Pgehgo=4m1$ROaT+99GSozx|5+%RGd}fgTYxoXbc2Z_`3|amN^Fqf!u8M`;X>XZ zZe|*9_!Go8@{bNH=Qx{pdzvB~9=Hm=i*?q5e>P8VAm@GY41)J14{W_OEftqCOY z4DhkAQkEh$7QEP!l(QQfE-p|ouZuF}X_m_fiL`jK&?R}XXKA`(vr%50PUFq+J$6%1 zzZqq=+74e>04h~dfaA4?Lc2w(YvK+aQQstG&I%X9TZ9Td_+_a&6WQ&0CuOcfGC~5; zqzRKf-LlNj8Zu|6qbZnE=Y)oXYrIkGa;fQAZu2d-bJ1)fQ6f3D{kSyq!u#v|Dh;gy zJU(H0bV=L4{Oi>6dmfJpm4=Qzm#C27E#qEtvA8ycmFKrfook=KK9U!bV~@P^?i1ld zxwpij-*g)yp$z5U*M|Gxe1pGrpu)x>t>k)g3%R3xE>vYUQoj6Sqft18!wYg=6I)QOt!A1_N<3uLYX6b{ov`1`*}9cSd9zvW4++5etN^Hli$;>X7G&`Y~^d0soSOqw|2(GIEljUOM7%ZTKX)+Vte3 zy{Oq6Y6TWWd7&nb$buDmffafyK{HKxtu2q`NZX?{mkoLD!{kWLzz+Bq{b%-;Jp0aS zYo(?qm`YMjKot{Z0q3ErGFc9~Ig(Jsl7$rg$k!GK?wgjd%VtW?tsgHN2Yczh7+*~wWFevAI4y+U77ETBx^G*hrM#D44JN>|CbNBo}8 z?q$CaQg7xysq(%HV&0(fQIc`l zp0k-%({tDREA%N@#_aaVlPQ(Djyhigj96D~iwI&P8UB};B5RgtMO4DlTni}?o7C5l$an-n9Mu6h3r}JG;BpvjY5i5nvsd(dLhCiob1=r4NSL z9!K8TLOnRX!Xl1nX2|}_9x47`ypl^Emd6Q}Y7Ob_x*Cp_TDATpjtq~ND_J+umWv45 zZ6~0&l<(AAWU(l^%X!p~jzVah)yy6b>dagJnZ(m_fq?7YX&9n6mWIrZ8>A1pD3!nWSpqe`gIQCg^Yj|f`Nz~r;` zZmjRQjWy5kHosV>`1>^SGyYGe2x25#{6yf73w=z)kA{aQ#(z6Wm2QLIqNOMz;Qjix z@o`MXDf{<7RWNL7TNP|cw`uqmM&(Ie<&T3Kp>nBjr`i3&G4XF=o2R5CioCDS$5*$6 zah_p3eLP0f%5VitVqSF)TRcOy)faJQuQn}tflMNtGQO5T_-%qP$wKAXZCXLI?cKVR z(zse*lW2S4kXn4y(PVT_|90=ldggmWg{yYqMU%LLhdKk^BYc5yBWD%dof6q@d0sDp z5G8~K^I?8DUwJk*O>fCV7qv~oCbH@^+K?0gsA{n2z9jrr&eqPcF{E2+-RoC9RWrd#$2j@>uH zVEz)LdB4GCZRa<0>FnQEMU?j?R_X3{~obO>!G zg6s9Bm(<0ClWV0t9BqqOm2XX(>p$O^t(}M^sGB#M3w<_@l<>|7EkMCL zFo}fM)Lv~}&*C)t*sRYwd}s3}FSYr$cM$=S!l;#SlAvJIqusTxd^h6i=!(3M3eUdw zG~bcx)zO(I(6ybs_g}uT!W+Y~^tsJc5{lgLdlbB)cg^g>IeJYJO>m#}W|xzyY8@=l z41R0k#<~#+@B1H^yqH?ySs2kNR-3Eb@fM_0I7QrwoHlVA_Ia%E=;%WsKXcqO8J8x~ zQdA!HY3Gv8vOCRSQ~o9^`^VZ}dmd?=;HGmBTU8s;&2-lr{Pl2YJjG62)fuy_OXkn@ zRar%tF9mY=^Wo3E;6whaLQQPG+Qq7muzIZCIF~Q;>#L1QFn}#D0O0xm%cFieI?aEp zs{@!42s`XTmU%&-&lgYwc;NL)Ec$=%@#P)Os>-C2f(Q(dyORo;w4*O$vG}s|UwWfQyI;(M zEPKXxc30oXVDAXhQ9)D8r`&K-HK!tH8>RYtw~UVuiu404R~5+nUSwj>&U(v!P|$W( z&|zQDuh7{e(&>TU*-87ZdHwOE{vLZt$T?7mF$HAVO~Lz7&AA{vInunrb!RX?r7XEtw=&8!*n9r4tpPvd_;dx3_A3A6%GWCyVeU?~dD2 z+*p&lw-?MIf4GPWBx#;4I-ebp0)2oRhd)t0B8eF9mTHj+UZpL^LCuTNQsflU30dJ_ zOriN??>qYe?)3INP8IZ-);I%0D2Y&;4YFyy731jrtchOdw4M~aJ9E@|8&zyv^yX*0K&Dp%$40*##zl2zI({0#oKu#)6 z_UvR^ZZU_0n@0ZNDNg#5(dSOpAU;T0-H3~Xoi5@grW1Ok1J}7xf1pr$_H)2o-u;Ad z&`RhE@5;8MXHB0u3_4vlA~T%Sa2$RYIVF6sdrtYi+HqvJjD%=fP&Yps<{%GoAQEOq z`zb(6L;efgcveZ-CS6?8V;U9MaFPXD#yv~sVgKWCQ!i75k;|1sEp&a*MxH7_P>9qy zw45x6SocDyX;Jb=HV6ej&-wN!`?2Ce{wq#Q5I$oiNSC?u>C(Qu%ScF>v;XqM!P~N2 z{e6z(;bd#_@^@mh!Z(^ffVMc~i~mASaTz8j#vQPNeu7Vi%vhmrewyC~Bsiqudx3V! zXy!`O$1Rd8X|~0DvU8*5>=fuhRfE^R*QCqKk;`&@yP(Rd_ip{jNaHts30bCT_C9OU zYLxWE9#J|`MyEB-6U$D%1s&tf0%<#;pu1OD`k_+Afg0L{2S+qD3hcLDG|DYWW~4ks z_}o_JZJJk?b|~zf?7%77(~xvIYR=(K>n$te{TI}}`-n`U=hFDYTT636AhXSwhrcUKi*d(A7z zqbPYsHKnp)iAk4Hy{`^T(vB)O+AsH4qS)!4$u@5$)~P#9(VBCdjg4_A)ZbP}aM<&S z3)0!aGy9xA{AIA6KOs7hrOnxj3ss%}4&@WDsMZt#wjpSP<&iiwps*kp7{lC*D z1k?kTiFI0@9!eU)H6`WSHtZQlC{!2(0lxcoKNr7y7nCJs9=={GfwDm+G+oj9?hHeQHp;sCOc3mC*G8Aqo3>9*D%&YIeI z6c?;~hvrpoZl|A_Om;$S54RS8@RIY{dS2x-2rzzItpWS^@tzj19?mvr~^XX7808#b5%Ll|mkXKzrgL!i_g^2L>zueN@D zqbV|Syb&{Q9%Q;&eoSgnkoS^tUy7;b2jl%nO=ZnTD?8>|$;%|Lav0xz@L?v5nwIk2Wi<<#+soJ|Pe|Xk$_5+3ZybP~ z)D%|7O8hqJh$pMxvpyMll4jORHjklVI*pw_ZxixGlwGr@>4s}0{%EsMkSoZw%u*PN%d&u3_?N8eu@wDj>3ZZIu! z9DvU4+%_`aDEoSsz}@s%X7AQ9kkj@Q{2i(u4bL7Y&7SC+2R_Bqm)&AbFYw*zo$TC_ z5J^SGwbDc$vfeXCZyI_LOw?rRH=s zh%6O!g6jjSiqEf!k0-inpa&$DPH0NnEIEHRsIjB0#m`e;;;LgjdaTqmB?xtVNK8k~ z&bM1+Vs;KXPwmf+h-YhJUgn!op^`1N$Gh`yxj_c;z!hxNfF%0iOc=y;T{)N1e1hDU ze!A6`TBe0bD>ga@io6E7{9Z&&T?YXIMbiGagbii^Flj*j;qs+u0IDT_NU#KO8MCCk z7sY=M{3X|10kI&O>YjdyMZa8J)?9B5rw5;V+Q0MS5sc+eB;BBFQ{ghc1Pl7iw$%3) zBmRKEo#6wJzCmKvH8Z|Ni=5zVOn+0tFJJf1qZFD0s;eC)Ke;dK^eMtv1b<%uV3ZfQ z+fu((?6%Tt#h^pZ{eAxD4CL^{!~{*?uQx=XJ|1k&>+0$v1YSg9&Wock=byfE(^1O0 ztr9)$^6i>Ac}1Ti@ZhInDE0M(#jtvyN@%bMmQ z1e}@=7d2BP*YOSd#!&SNNjI1gurORW78mlN*r=*o(LEEcDQ8@65gek=__X|kC|Jnw z)AQXG93uBkY;0_#QKE>snZ&M!qVQk(kEgT|n94x%5q8vYW5g1s14@4Xexk;CmJH10 zS4(OFS9H_s1&4(E)~Bj0EiLhGzbCdwS*sjH{LVR=M_7L5oHS%yKN11)^IYgoh>(vc zLNrmBvQ?<7Cc4pmxEu+)4S_ziX1d&kgmHAW`!g9T4yWzEjp??>^hH* zdadQR6UzJ-%1&3x7~V6)!2vkeB6IIvmJ{wJb^P1k;+AzE)u^g<=J-hhcNZ$2Eu}XK zU;@c2MG45!xryi3ec`|KMr1cL(<)*))Pnb{!a}@@jyiO<;W}@t8ymgna*=GYgzWyF zur>W?)<|6+khMS0D=y7A3`kP1bgkQ&L=~tz#OT!W`SZ*=+fW3 z{KPm1-drM8uILlTy#-9pCzf4=czuf00#PTz&}md3H%hn8e=_6veFx#FnzAK)(IyeX zm$qqx9)81mO9dkvVMFKB`Qcl*l9>AdbbaCVQJG2IuvO5XOSy}M+#-*4+wvL@3=-P3 zi5Jw@{#eSA1M`(BX=p!m4vR%24e<=FS#0ZeaDF7@XeSOGaqs1YkyF3vqsvun33iHc zz+3Er2hSEVdqi4JbkmPUDQIL}mIgC{odMwDnaJ6eh?LWGt>6B}C1^e@b!7|Q^)SCv zfIkSB0YJcoY&Sa(+pWMk0BMadyao4ch)aCoVwfty-R%S0MHOyU`gDT&B*3=z(ab|> z+0cgpvYEcvwa40)-0v|_NJtM^=#fS_pUC42U`S-PuAd`J=cL8>&RH z?Z&4YN#xt(ijB%bRqeBdO%ij$m@ni<>|t^^H~!qveICu`gp}-F(1_Z++htMc!yn#u z@bd{Lb&e!>!OGZ7>`754RQX0+=L5U_hUdUUQyhw$pH^`ua6f&ITjUO>`SHk4H4Yfd zCQI1M@0FuW{no2cvRh$aV~pa_?d|RHQT-T5HkL}pYvW`qspVu@E65iBmL(4XbP9j+ z+;wiqt0MzY3}M&i%4|?S6N^rN2{%v2ff<6ii8-=9{z7AzoZ27o%twK;^hg*|+IB$h zC{0X-S_;CtfXr*3T;P^s8lB+-S8>P>ngR*}W4u8p1iG*{tqA)g#4sPj4dKUya4(C3 zO+6>Ax}hkAQ*YS^I`Az$?H9g#lhz7{U0P;9@O#Y$c;Tk*#A&|05uk5)p-QD#8ySIg z(&u~~tAtnvWE)Y`8p5p)dH@I3zJ>zAG#A||wQej#g2rjVlBstaZ#JvOEV3LBa=T3O9 zCeHl=-3YaEHPlr$w0Oa2LE4xv^#4<|gsMvPN@oOy+gA~8=4x1|jKjRLK!1V-hQuG+ zpu4FRWBo?KY4E~gO#lv~3Go-7J_Evb>u?~bnIE^z19qJF_>glMTU2@kWVZ%4V*f#j z<94XiZv)GpZla351E5{s(FXk{`j42eYH-A$UQ#yR5InW*5{{+X^iyBqxTy*eOk?%& z>W5}=9>(fa(mc_E*h*Vr=zrcW$er@s#a)+)083MgX7xiT_&jUzw#AZQz+FGmVM;ad zvf)x~ynIaaH=ZB5%&9iTO%+-MKVV*mbQyNUdvH-OrnE-I9rNyc7Y%FmKWM8wnn^>q z-r~|eX8;mg%-ML+3sqBI*=`dF+_dC4e($8^OL-qjP(8_(WZc`p9|QKsBYTAOO^j`&Wk4 zwUnCKtw+&@-$MQ=(&v!F%Om;bfVYzTi8A`89tqMxTj=!0<-C;BPs$e%IPZl7{Ta{i zjw_O)qT1J3@0?DTV6XE04IExx=!D*rl&l6Owxj@(pVW-^yu`SPn;}42R6%dSF!zU+ z6>Ea`_jXk3=f5>%dYCP6KUD<=*1TZH$xq6z)}A}*WI(_00fU(avd!;o`rWbS@L60T z_OWAk5Fd!l1wPkz8+@*Icg&d4eNlD0_dVJHn~SZita-}R34O4=ljk|tdbz3L+-J7s zzMLe?Tc1b3Bs^bA0%Y@Kck%Uw|B`e|)+bXif^1a(Ir;a$o(9sreEe%4eepNa(Q>x) z^(x{A-KF#u1F#f;34f2*ALw>M-zfh*b01_t4nO@3&HxHdJQyQx@DBph{7>lhKb_u( zK_?0sdwOKqRXt-bHf_*rn5g%#N06ctD=pe0uzy@VhopO%7lXc71oWQ=I*9%>(>mmW zV3tNjrB_KN7W6F?b3TKQkn?3l1{|J#1W$PQC-_lx?N-!PE`0Zb+5M@|*3fzUCj?`)O0R|=37iz`h z`+9!$ioQAeC7}6U0RW=E%`j#HfTPFkbT!0U`q3G7O=NEzkVA^gFUbL2zzczp);j}i z>OwC-$$&}!GH0JWxK7(P`^QO+d)6nhh_;wwRY_$SKN3-#qYE33X;je;(u%WoD*K}k za1a|Ri0#M4qhlz3B%~etCR8d8-KdMC19;1S)}I2bpYC#=q_S1FFzivu-R%(C+juvf ze9cs(j%Z42o@`?il{m23|5}uf6EL+nnnL9*T~&i}@QD&Q4;i`v^FE(G}D!TgN%e>`1#Z- zvM0_>>na~I?x=u&Wsnc-W8|vEIBm8wAli0LbyiME^y_iL((MfHclFabF zEUJ~8PT<{5?yPtEb5QXL;=2VObJ3JUqIT9NR%LP|ldIHK@V_6^f{E{`Z%|R91v4gP z8}~z-`x@5vxC-AZz6n*qK7kB~tk6y>uMhQo+g1}FwDRidpj#EGufzMHni#hJP?EE} z=%|C!F1$Z%0ZV98M{1$sZp=-Z?EPALllgDl?Ct}?(`}~U@XniYZtp?}el4sBmw3^r zz6yXGu_B^mTL|y7_6)-JZ^$H@&DCkvrL<0oBhnyKx74DF7rbTtIRdi1#hq^V!K?$)uZ2%~`}5&Hk-nRR<{o}5@LBK( zlk=Kon_W>9@yyIEuDK|sB37yHIPR|OzZ(cZ%sKWl16tf3hWoHxWCasS**E|8nRZ{D zQssVu9lHp${`_^utzOY*qHasu)Y*Kg~Oyv6%tl5!Ok0FHpur-aIbxw`n z*XQo%m^-|k=S>p!y3Dn~6iTny8@2ee4IbPG+BPUkegU*j5`E$Ww3DjV-_}bl?*E(8 z#faR06~q5-i2Yyc9x&#f7 zyZ=cU@n{Aw>VYwOE!l@KmW%&XQ9{nYlD5xZi8+OZh1j=?Ky&=N*b2J9r2SWV)yuRT zW+a+_R*42VvfK(f`dmmcZ+)jr%kAzzlmejk{vdqC!??;Wp&Oul*Tt1?0o=4Uf^NOE zT5k28;~W1!flOhYoAm8N?2AEJ#D&O*elVj?&%2bnIy+UXGOd$;0@Ot*f0R+PzfVW5H_DvgvzgM2Ah@?*_NctRI)wWIa?S|TqmwNaB#6tjn*E$yMD;fmh<8ZhQ zvGruSbIIZq=)SG5xC(zzh9{>su6i0lqs><)b1V7){qfaa-9?HJm00x5R$`6+s_`tA z-$Q;%2XWK|rGn1-EKl&P?lqG(@aYr2zmC77$|glUJ32R6IsC|q`x^n{w;G%RS2_h$ z?i|3KJdb*y0FMC(|^p%HSnfI^HD~=uJ{s9)_;aw{GY5ogK%dxlf$6KWLK7`UV?Qh^~n%p(k zaW{6dNxxZW0b`RyjGu+7Yl}VyLirXz1zQ;HZqg1pIPFySi!!B9`FP{p_lmpgTJ%>T zZ?I_!HN@T=PQ)rspLoGfvZg4AExNfu)Vq3mW@fI!6jL00Z7j*^&FjyJ#on} zxYIk!adzCya%HQ!U>*6QEe`{^Z&z1`3~A8iB3t269y zg;wqH^F*^mUDJF_{4p`#s?L;Rn<_xbRZ`F^%t!XgEWY&9_g9&Se>skp-yFwEQkfR- zhh`G_Yf;C=^uz}B19J(I&9=h_PGZX6An!@8~TR@+gY z?HGbgL61|qDA+cQ*Ds7j7Pc>vvNgw6&nDnBWjqYGTQ@A&SKVJG-z6!FDM0`|kz5%> z2)&`71dM`ihizoS6bIIn$)BoW54ea~bNuHA1vv0(7# zXmn!~Z_*3`W=2`q{fAAE_B&wICGjbiR}X-uE$X@;!#$*5e70iwY6i7(d$+jOno%Wo z@3I?gcxc6Rx16kXijm`ZN?{RQ7 zyZ`3kTWrUjJofKiD_BaJ;z?JFvxA#ey!=8zbH4zO^xqE7_TQ1bA_q(Xe+h0x4^x3! zprCq{_OaTV#N#F^NGc#16KbtY=5(rON|AMZetih;s#})JDQa9EXW*#qNfn+pQ`pmX z)d&5eQy^R-)IaMUseeH>vo$8mbjx81E-0VQrE6(cSD9{YYyKSbY*%EA7F;r6DgS{v zc>}_yLYpANb8)00-xBQ`L6r=q3ICY2_g=E6p}+FB)VnNY8Kp^zHGi%e{IAJeQ-CR1V?ypn?ut!ln+UCY;M=4$12yH0bGj5D(AU0|Jz+ z6-kxyxMQ}(bD&S_mgkkDVO>~6LnvLLEe_!(Pk`yx>@^;sT>m6WJyXU}OhRAC!*cbMW3@d_oPr*{v_S{0%rioxSUHvnz6Z?QpVmMYmelIxn!CG)gM_t`191 zJw?VH@wjSh|QCoGZ%+E4z12K4Dal2Ly^< ztFp;2Jo=_CmSJga%gOTZ-5I8m#|x2HcPfRMDQ^(@`yV{f>RbL4LYU{rez-HFSEkfc zB6&kJ17Zt z*LEe`5{8Cfi&ylcO_Hp2IX25^Fi;M0jLq>Zw1abA44Kg0mot0vA{EUgdcG-28lpS^ zyPkQ8BXguw8O_`vMr02tTXCMY)wltHTBI5t%jyYAMAwsPEp%N+Q(=GHm8~amyTVr( z;&M7LI~7Blvvv04QK+V7a;I$#17!K2b#y#U!MCek&OBfv%y=*f*cnpnq1nc9R*$Q7 z6sMC{_T1|!(>>Ys8tbkvkI30;gG3xpuym-X+OKKs$a;fO=No zs12#{5%vO;rkg-zIE5-tau&093b;P;F5l$g~ z3ws9GBKa(?E*~^PlfW(b=r`Zw+Y6;^A2>N!peNP4jpqjiE@k4uj0rFpELB=8mjvWv zv-{$k3;C$V`Oxg6)9%>iAllGCfQw*yzcIqRMfNy=fDw%Dz{41erI+YIA=6(8IbDT? zWJ|P^f(N0=i*)*!d&uqRK8j$s0ntYQF+ZMFd3lRVx z9;(Ueexc<8?`Cac#D{+}2Y{}Y1b0D^N4=u}-e}$)E*IdCbpf1_WZpmos^iKr<=Dny zC;7N}tM__v&U^`qaQDi$IP@Gv*-0j22rZlS4uAdueD5 z+wj>@Cx9aOP3L?rshPoMh^Zv!?_=H`{_`xwfABhg58eL1-b|~Jej^bqe-)S4!{$xE7f*5{)8GQ z{FH5&bg@Bs7M6R;)X{IuYD&0LC2DvJdo*b9n}njaeyr%%$o!fM9QE#4 zwDjd21j@N|(E5SWGdketry}Wav$STWdE2puGz!Qts#ZT~9tZ7gg#+G{KR}!CqA(v* z>A7x{&j5hqM3ME)Bk6-_&cZ{;=?N8QX^+x^rHcCD2i%s1#Rwzn}Y9f z;Qh7|vh!7B2ikqN$2-)S=pvdGawg1X7VX#L<1(aCpkV(69SN z(q`#5_u-T4AM$sbTk}Q7=oPmtWUU3iDRPsHEL7#|mtwREed|TjYo>5!?~yQI{s%`I z>Xn(LTGE5u$9ce-nwsRT-OD_g`}ihfPTScD!T}*ZYuK6tQfcdMa(!i~^+QR6R-g+$ z4G6f5`-p3b3INitlTEz`Gzra6fP+{{U$B+XikEAxu}+FS_M#T$3<*=IE4D@KaW#E> zuUQn4YNuPyoP+~2kunAY8|O6541}4*B}u0Et!LFVn{ZJjtF9}*Vj6F70OD*G@^&c? zO_!DSfCYL#>owL1br|b59LJ-+MdEe@hJ``^Z}eiA>@%E*pa1P7S`KmtbD5VBC`}Ey zYSJizhTWiIzV&od%uX9_blUn;eQf=3@rugfk|Wd6vE0Tb%6qr0fraz8UPFjW4lr3v z%`pj=^UdaK>f&Z{wqe^A0CvTff4h?C|7V+-zljffBxl>5fwh~+x)>CE`{0I9|MSJd zx!O^M^n!_a=4{4A`4M9I1~-wjt-Qc^P22x#1Ka3@=-+H0FePpuZx8g_?I$^>2fimH zb`@3}w}Z7-f{fr3;?k$5RenJC^znBgO#>Iw?zh#B8$~mVa&J^MXI4wwa3JHkwaTiM$Vzgh8N^)wKeu06Dfa(cm{ zsXDt3TV(eI5siH91^;`TziB^U3f{E7mum0%?v^Zsyra5@(lTp&F)-kXNdE-n_}$2W z{J->5`nylm^RY`kGm6fW5P0F@x6z?Fd#e&0IV`l%d8&TdNFM*2)@^ z9XAElf^L5==-` zw#?AVG2#Kb!O91ftQR`}i2mSE1Or6Xbw!s>`o+wq2u0 z&vClkj5@)e`gvl0?AKan=3_?d{q*Kwe9c}F&P3Og;wD6-bZyJVr&On+DT3d}g{F>D zxf0Kxp00ik2AS=PZ47?ee!%qDNC|I5uQB3)u$N{EFVDJ#C@Jv_Kv{LbOGCaaa(h+C zDvhe(3{oCf`D$)Y_E4s1u^?e|9k+EIutw)HD1kTtN`^wg`Nl7RvAVrmxZ-V?;K8XmZ%7e4`~5owYy_ZdG38E-$S0H+VeG}Gi2;mNtcyyK6zJ!-OQ7lro$ z(a+x($RRbluL0XK>$Sh}JGYb9JI2>;G*}W2fL7!*({I0dHQMwypiH<;@6RtKLte-! zF|OG=Rt^9A3h4hXsT7ZXtMmF^C_+<+>ai0%lnZQID^*y2>84ZCbjy=n)c`j934U5Q zT8W8#8(e2Pw-f|Wx!)##@yX?mo9pU78KqX&Lc@q8&06*J(%+Xsz-vxI7y8rrhs_vUG zy3NXV;DHKiVHmelWvBEJ`_IQnv&*SR-cu8n>jpyxq#gnHyZ@t^D-CKgNy8uNpo5?T za_Df0L?dSq4+y6s0kUWiNyGyLK}2xmNC*LuLr3HiBnb=%0Td8{2q-dKfdC`70s;Xg z+##G2kZ@$UWIMH6`*XKyw`zC)d{z0~1DyrdS3ZXg}?{EAwOkkQs>{(>>{r-0@tPX9>)t zEtU3@3PJqw8+WN&wa?Tfa3RImv>zAT>Ob?5g;+^j+av~o;A6KFhH_}2{8(3%7`UY$ z&xyqZM>{9b)dN23R!6oYTT<~D^|(Kp(aDN`|JmMt($F!y!$PxGP}7m&h4-BjMX?q4 z@Oa^-viF;jN9nB$Dyz_F)Pm?^;9;XOGa-F($IrGscGE#*Q#Ns?8-P8pSh^B0(TUay z0N1sW^+r1a@&gG99h;C-2Hy=yyvl{QpUaeyyx$JN6*H38*o&5kD`k`P4n^PHYr5+l zgDfS?UU35oSF-nnw;0FafrIuaJC7^uIe{M zem>~A1dFqjwM+oI27$PzOY^hYo(7~{T-ZmjXr0p)_M0w_CD~McZFkK0zWO4mYUG$fxBf=?p4GLb>^i%9jKYt z=uoh=G8kI3+Vk$sbEI16Be|OQJ0NJn1%S>zFLdvH5*Ioao+Y$hClK#wPO-;S-CsIk zLz!@i&tQl^VL3;&7E;-<0A2t=tpDeyVFsZKr3FNa@@7EZc5^D33cPYASS&}^~3b3;7M^+a#%3wHb|kNhfz zC&Bvl`I2AcT)tnn@iBy;(*;bz#q8K-<-%KW7kCx0`m<^=w-dKt_?EM>%WWvhTt_`1 z4VnAHUeKuAlb>nQEsfVy<8tG{4XWZ@Q>kU4W)6Q5NI^(Gagb@F3dRc>7PE8j9hO=I zePscB1M0qSyH7=$1fRv zX75t?i~On@=FH$NGSxv_zZcL7JUue5;4#sjBY{#7G*viH<678)-N5Wh4N|SNQOPll zh{0QPVKKH8Lx9wkUTa3LPLtoo)VtqA67=^kr&15q1=wlUuD9kjE8=6y74nX*jLQ<^ z9`GVWA?TCW1dXL_Y8)L#Y14)i*{%pA8pmtsG2>?Er{4}Qcm}%S35Gep%^Q2yu&M6l zFhG#C)qhh0!JJ&__jd>sd0>N;U}8Z*?SGk#`{%j3|Hik!wxH?uMa*2c>8_W!?!I@b zs;XWCRe^+_9W+aT%bnAxdULadlE3q3sd=5%HrUXOlHWZ&_id*e07aEB0;OL50P@F4 zJ$#oLzoG|OG&8+nzia@^GrSJy6QJX%J`cW0qz0TQ0xD)#Y1|kD^Rm|J0e?fV-~Rz> z4>c?eZnfESvuQ73-x;60L+^cv*)zn=gEhVW6JZr~Agqq>_RM>fX+9>KKHs}=oTD-9 zM%w4d^OD}YfGx0cxA4~V^6i=5yIO_jJwx1TPW@Q-!AL7?u_KIdF$6A^v>8WLjq^xg zk9m<%R+RG1l8$(9o!aMrwthtBmG4|XBp6RA;*Dg4b8aEbUw)jdpUl^PZ!2NaUvW)9 zOE^oBOblD>0?lk?9-cZ6?E1=5RB^7t*($Y%wnN;$s;2wy+eBX)!_i+o3$*Q%f`j}q z(d|s*^@oBZ!y{u41xF)?HI}N6%JDyRx?e_iC`)Wyk&$t|7C{_@D* zH`*chYDXHbEP!s~F^2?gx_$-O^4dM&Rfiqcq zw6||(O>3uyisk3%UEi=>#_{kUv+i6!&JbVhN11r!a$ zStT@Lw3u2p7M?KtMAIdfOG{Wzq+;7himLD%`$2SNfk5`IWH!m&KOB_)gocf@Q(tYW z@%#&$aPh9*bV&;jYCjI*g|MNeP5tblwM=+JYeFDq(-(+G+=)(&xzvavju!UFM-GI*y zGQtJwwVYSV(EzMinJ1Kvs8D0JyxRpRR?0q)5k>w8O{UxRU`ANynNbv?bY}6HF@RkZQxkdL8=Wy?A7WaH@FIEC9Sqh z);szOm$3`^v(v{_HQSBkDaQNw58B*xO6ZBo4IdF`P4^9rb-0^b zpGDdzFS0T^q3$I`u@rfamb;sMAPUCa68$6?P${*DZUuCCagq%5DM2MTUAip#(B6jA z!H7A984JuG@!h{WMk?=+!M52G$(b7ItCkMmH$f1UxSJ{S)*(QzGYb82+znE_<9|JF{uvYp~c$C9+d zi;lI-C#qI5$QF(PB4o$I$E?!r(5)LfNc56d`eOWRBY}X55Ar?UOxiFxejG3~pwq_x!Lz!L zn=OHOT{G8i8ifElH^5FO$>5#0$SC z0G5xdj$6kj>UGuX0T~F~^y?<+dNN$pi7DaT5Q+H8|4}Z&EDC@surFsquWU6(a7cj*cg0n zjf9k0<`W0gLN7{qWetqv+H#X46$>Z0qqCd{8=#8`aLRsm=b{F(sx2A&C=t28wo2Z{ z_CC^Xx@_|mb+7I%I($FfZ1xX2SmDr{{aSvQi?@BWeUT5zc#DuKZop`15Y_?<43r{XPbYBd)sb<+RDwppjng*h(nsPyHlumb|k_( z=0UjTx8#dl0b%z=*Y|66qL`?*Np-1RKd+$3!_dpJvVNp zf^3V_wY)nw%_{J(`7HwMn=|nl4?L^{G#1lPLO2y~_Jf=cyKQcM+tKUX+8bg&d0`cz z0!DKs)nM*Nnk08VH%szjqm-obP_e*bZws^m7Nm2IV`cmZIF_|8B|bq5BUm zlwK;WWHfyF^WZ9c0k>Y%4@^&%0f6wpiP;T!NdI0G<$qqQz3<(YDOBoaTNkld2)YEJ MQ5f?=Gv|kY1>IUBopwmaV~gh@XCNPG$u{(j_32vb7h` zv<`3St#@oGGw$&US~35b9`CL5u{X%#tzeU`1)T5QAL?<1UrmJh=~A@T8MRVhf4lrQ z?eo7s|MB3ju(NTTS~Qt)x{J?e4k8j}cZFZKj$?|x6U%jt3e=N88ux&bGvn{o! z@nGncu66KLfJT}sh@;Ty(Oh1F<@6}RnR&Wnn)D>y(>>7WXu?nT`?QD`dsjPE+j6FK3dAIY}sgTXj}I}w%A&GIXO9b zU@HP&v1l(hh7#Se81K1^d3Pryi1K)>SVp>8BPeTsafk~GtnqnAL>8Quo-T9}#T*qN z+vGjlJU3@6>y}!9rjUrMSSy=^)>WHLa_rxiku#MZ0p&#T!HfyS0_Gs zV3iJL7TDdm!nYonwOBuV7Nxlu__qBJGOCQTK=&A-iHXu!DY|SP3H^ zs;6qiX~n63 z>C!BS9(hiuSdqH(`5c3YJ7?#eb*1pnEEa~WElVs_?qf(#Im6(i=D6TjPX~-tuXF!& zLqI7z8OVU(VBtH9i;tmaoRMs{PrgVSSH=uLdbEqznpri(-}01!S;Ya)$WdNd8N7bJQATpC zIdIjq-0~;8o3^$#ibAYx(YXKRVLnepNo%X((!z5cQ|3%=%G8=Il=Lf*_?2rhn?@8y+cn($R7&>e2V zQwFjg5sVcaYhCy98MzTLmL)T?8{C7mhLMRfdc~|EjfEp|a#fynkG^&95(tEV0`4Qd zo5$*ijScV1>dNc;y~34;(7zb<4F9ZZPQHN@eC?){aI%wu)}^-2RM@n<9hZ6lF_Lsh z`HpILvm6&^k-Jn7QFP&^mxt9#A+va(7GVhA33}Z74pE0PSF*Yv|6Z$6ze|tx&^YSE zKu6}fq>0yNlsx&u(c2{E$TBWtG=qL>;IL$x>2V*df@}s=Lb#ET&7nM*1bo9(w)l@G2Gfp(6!iugC4$@Y^wSvxwD|fR#=%dpH+LxjpsAQK)o;Zn$7QyAo zy;Gkqhp@jYysFN;I%KL1R@QXe?Q|Bh`obO5^^`AFjk)3tsz=2(K45=jo;}m?8zl9w zPba#csz2f)HT(RsP>~x%=g#6gU^j@8vgU2*5&8+R$*0knFgTrnpr@drI@ekWc%^gs zul_t)a1pK?Dew)H&6$y>r6WmN{Am})FDa)n=GW79vnqj;DYFv1W5c`2w_LAc%^l&xF{uUuq4<;~VPy-Y!lH1V z;V54;yS@N6q;4$CXmzbvRnPi0pCc+0w~?I;w@TI%5}L-|wc zb&{GMw`I+`SWVheNw@S;AB4R>{dxO~K|sYL(Qn5s(nzXo1dB&C!z4<CMYknVIqb)C5Q=;osm&PxgCtPEJj*RG%mfYbc z)GiC`+NfM#uHp=q8XWpcDMX@H{YxmclM^xE zUuHM<{gX+RB(}&Ju`-te+SKf!J5pkVv+W*e)NTOxYmX1u$a?>n5w>vlvX<)+I zSs6qPsQcF_-I9=}QCNCe1zKoQyQ2KQvSUA6WUB}xIBk%SAqtKrBVE2h=s@&6kj;>q zDJ*YIr)VH!>8Z$t(V0SiE=@vxxRQ(N!>J`J4ZWv~1Z;mBR?x2b)-$+=aG;}J0u^r5 z$RdqG9|XLLu69vYPKol=f_D6-PsnH>E79nFW8o%h3;eWIHanveHY& zbfg5?CD%&O)f#F&{D!`Gok2qJDlL{)GEHQ$2&07~C4xk4`RGG>B`FL#uKHadiTr_R zN917JT$#BO(a?(k{Q~%SwQS+qraw;!{yRBSyMf{pHa*=A6&`jZ7E(!uj{1OS{sx*1 zVw)6tjTjDQuW*Bfh?B=HltH@COs@V6vL3xDzx`X8AL4T2JXv}mfM=*J|1djw zGuoq0N`GJOQ6cVU0)I-PYC=E6QX8SFbL67d zVvMe2IXXALG6FFI=Zx>Y%?X%D^(-iQtJ{t#BuaOO?wNqDO?{66q?6*hIc2Rtmp5wh zbw|nFU09FafX`asH3A5zg?&I&DRL1awl4P&FfVSO=OZ3k?`>ImrDw6eMyTzw=mI4xA;&1s=Gf^&ip^S>WU8hd8#m%6=Prx7VJH{bD8#cB=p746yU zxMA_zj)gC(dvawCTnH9)J4|&Mn7ERS1E*N`z}n9lJSresz*8#rsn}H)8?3-W4070q z|0v?^ys2mY1P(wI_Zl0)TniMPWEvF8|IG~8o%x5K&O#!ujGf+*s@lJ0pCa)p`xHdQ z^PQcYt%W4>kl&yjdqrZ*#jkW_@Y>U>E z;cBDCGr1>Q9~9bjX6{p1cKYliPZqd~x$V5X%5C}EyepKr%m1RjaiAxZdR(Xna*oBk z=AU8vlP+M;)r_7)(d>g830jNjm!*NWA*AtD&8Zyo_$==q+STWLUzG|i2$$tKk|#>- zsV0`3G*5r_J%HDIX1X255i{${s;oBo4Slj~ImR;RDODI%|5=(%*l*CT;obGk2;Pc~ z@~w{(oP{2R8&4{FQ$5gl9h<+`I^)8-i4G}u%|tA|I17m{7h6{aWZ_{~{66U`!ZL+U z81w`bd_2vUfy)Uq+Z#AzXq{qeWT)a1z_#J=*N2H~GTAkrAkc zr^BzVB+uygqS#?5WR$p1qXIT?rR>#saGM-U$W^|j8|vMj-46aIneoH~dFlQRK4su=80n$K?4gqhEt=T$T7DSH zosXio0|y4*$gs7gmNSD!P@9Zg`C0f?hswh7;B{uA+JNx;zmDV{LPZ-SQ0@5SQVntg zuU{|8U2j`l=UbC2=PFhnPw&0_3nx!QBRm1fD8gA>MA=YXxt0xHi5V%!=;AK@W*)1* z>VkM(5EWmU(`+6;#+&T{M<*e1*!Ab`4fLi5!X@@2Czl(>$kNJYp6H6JYi8}MZJaTj z$Xg}3+h3)ba~tzmQGX++v$90SuaEOvj|6!Mcn6~2vN8l0>$O{DzP||lV~B)*cI0p+ zSuKb1lz)cL&v-x7(#8|B@2ZMlg*%a#B7jf{Wv>r+m zZ?%nSr}w%i&>HyCx||#>IV>J2*qXx#8X=WSa(hM$;vU5f3=E7Os*Yh31vZ4e|Gt-i zA;)ghYY zL{;mZM73&zqCJ=2QQCGZZAtm=@V2vAkCr`7bglYf2H?ux%Hp5t`z&0!Ne^0N_RF_% z;tLEK(2fk1Kn2|STu9W?#Ky_V%<#?0hYuSg>$&fkoXDE-RKE6dTK*Uhi)g1*iBVd4 z$c(vu^<#cos~(d9`|C`ciJUK}xiRe-PWWXW_bGbetc6vYr)geInZ0L|BbotFXhQi{hn$?aH7-%b(gLS!{`9c#dk2yuY}buPq8u={?7P z-JmxrVcKIJu*IJYgSNU<2M0|SI{~i918Ll=^J~-j@%^$WH-#OX1k9HG)%y?qb)f*y z1Q&$YVAkpd`y^MaJWX{Z6G|jOo{cK1g`=aXdM+vqK1$v?`s}cR@q0VAE*TaHXwV(C zIHh+rHxsPtpPS#=T@f~0;~{LGYu%!JhO#Sxn42t*GglhYvfS95rwanL3vat?Kk*uf z!z4i(rY{cNcAUupaT-{ye3h14>QeE9q6Dl3%8s#LcZFjs(c5o`W85L$M>#PUZj-!8 zFK8J=BCJ*niV`U zo5>Dzr{Zy(jFHQ?(rT%FcK76ph`7yBt`SXsqV@@?H5?3O^D`db12t2mhp_MS3JyD% z!uZQ8IxzJL)P5E(#v@8-s@b3{FKCX^I(*P|1?H&1hxERx$T) zK7r(>4KC6=QnxgP?+m^zTgkg^kyO*n&#$8=l#VL99%r?`g4(*84*gzSd1IJ3j0=B4 z*v1Z3i8ULO5?mME%QHV}lT2n9qO)}h-J~RE9Q4(K3O!muD(k`v{2;$;k?tc}wm30H{)| zq4=$qGNWVLCqdtW`0#x-CH_}0BQ&8MdVv3)u8~MnQqvZfVPC1US5>xmJD-PuFn?C9@t;+O^m8R;2gIUlCzB$%$Yi6T$ zOhb_-*gsayiaC)<56IUItX17DZBC@n<*v^I;R9VcNw=b8KOi+X%+~IdZDdGTs=Xl_ zAART;iR}CYZqFeUo;>T%G4Z`a8C@gpn`K>A|D#_=bu!>K7TsV}e>QeRlV z$^F(TX3j!xh^WyXxghsff$y*`|4h!HI{HalgKfz&`W&@gZZyQ-O$ck5Q&0v@xsxvf2K!H_@~7 zr*@Z_dGQk3iT%^U_OdGu9M;5>Eq-FH*77~6J>x1()jVKF#Utz_|TYj{o>X1>l0%XfG=IQS;)tTes_^hB1R-1say5>W; ziLP?RmsE1R_xVu=*)yiHk()vCllsfmCkJ z^Sn0<^-x${7kBN%-HB(>%ltu9$3U3zxSN2-YLxgV(1XAjS$DjLeWh2U$>NruAP@%q zljg4o2Br`iRMRlRaBxDni_&VH*%;xY(p1Tzw7=L)!o&e4s=BWSirQcU_6_o)^0WtdJ;o<+6lYR(Hy1c^)5>xcszA?N0o8X0dQRW z0F*TQ4C|J5k7Y)Qq!utzYecrJzfuJ@r)ZvfeD+%IMY{7>EUnWnH5^a9JRhOIi0m{`=s=`o`maW-LtwKdDE& zq`{EpGs}H=uTYu@24eQcTTeM>aIn>mmignJ-rdyE#Zd5J1)jZ-JB+-wOT9(&S^DMw zc=zDHr34Z#NN}+}=LO(Hnr{OBaQ4$|okoNvj||j9{zsY>z%u_y0)r`JFOS`<29? z)VxrM-8h*MztR?3_}J5aYU#9?=Y)9xp8^k2#@GzZ5pEoH1F2s}gB#wPBx{TvVY^|qpJ9NQj`T&O>pTb4mCqmQSHVY`wXl#s!rTzu3t zBS3@t2Az`-he=r|qU;&N8Tho(r`chM`CM6Oheq-Zxf-wOdd@S_V{Qe4f4F3ks1(iP zJ=KcQJ<#laJ9VoXN&zX8bbgj7P~+l3~-~3LKbA_s=7^KZ9&V~Kg&;IfrnH{ zSP$tIarA1+_HPCh-k;7uGN6ZpYz_cZ7?P>L(x{z5;eZjZZg zPx}GYOSy55nY~(+u>twg^Yp9?iVtd}or|lEae8D!(r>7uP)ZZe? zPP&S7sox6}A}OXsE&JXjDPp1`invBSMk^J3ClWIZEL~)NC;j%RmAWjJ5V-M&sVch{ z9*fo_xwRwRw?A;7wi+U2yC>EId|)wROb3ie;yCTjg0{U>E;++JY`|i?pC^nEFv4 zWH)E^a8`oQH6$%o+*s72y3J4np%oBLJjxH-XzIR|Kzzc)#MH}zI~oYyXx$x{KI@JI zt7iRx+gi+i!5N#mhwk>vvbGCHBO(}opR zeoLxdG2I9!efQAh=wLYfxi6PS&iGilugXP+|7f*QQ0>};{*q!M< zC*cFH2}A9*D9y6Rk4d}d(O&Yos~*@=J6f`7mds$8yAhCfVI1f$xsM6aLy#qifwM<_ zXI2o1+FI~!4_{y3n`ncyUWMzqnil3YzVpIeE=b=bb8jR5TVS{8JE2Z9pT@6>Ry41- zr`veKYiRNKxG{RY!&)h2xwc(ht1GZPZ5F-nFmdEGOj>4AW{+AuL1nU2C0xRe(nX#& zS%I2>laPb#^T|k{j2ROo?%I%yFE2z{@=FgHjd&}m0^E+h!f9FS{OZ)4TP+PrhMm4a zdb#3F=#N@pc0XuE`M_=+cN7rb$+uzF;uwcA_ z&wJ0K(oa63C!3U`JQu8foFj4z^cPvcK~6iz4tA~K#8nWSd-do48 z$yb}$oFb*{ordfnrt7J>2uEMvtu1`Vlp(}ueFLN0;I{29 z4pC82f2#agI8`}~LGfxjV$Ckq;C7b_&`P)*EpnpPo`{QXTVF zDwqbub$j(IIlWFW4lNW=Ubr`&sywD5k(Oo3hJ)~1`D#NAshmzH2B+bJ-t2p(_6fDN zLP0&RV3cWmU2FuWP2d_z9?+2^KzdCWARi0s0A~~*A5YMMm?e|EMuEjznbq4r%tspp z^4t{o1~H9$*#rDyo6HHaGx9p`f^_t&hdHXy5;|~^tFp?(6YA<_ZWI2QC@#FH73DwC zj}fy15cG%emlCKIs_LEJ#uF~Qr~A|Aua4;lvkEbYhpPLYy;*p@MU`*x#x9ez+^k!- zZjJhH%*b6{S#6h06Lc%oML=20lP$_9omj$o>xA|4FN06HV4w)u8Xy9@UrEsN@`S~-bKmeVmbT3>1a`Y zWbEX_vfR7i=-B*9#ELgcNCwIgFJvbCxS!9Z2Hf$>=h5ryg6H_*-xJHYUo$nz{?#4(cS?mMkZwfZKB9F5_c$|BLD zK94cx_a*QfW!_}@sXbl(^tWo=tOI66e@UdFH1(8t8GPpp+%@s=z!3W`7CU=idI zAcSp@I`ctous#s^ye}-5o zTm>c;K5MJN&+e4mrxfx5*YCvs&tSL=Iq>CEvjVy){&4v~!YD9B13WAIaE<%)KmT_I zPA~-&DR1E3GG@R|FuZJqXaB!^)-(w5G4(<(rwtx|gmVDcJ(=G4%&Ejo<7ZrudE8It zVbEhS=xD$>8sGKD4}^XIVE4231NhmeihloBXHS1->OHlt2Vs! z{T6`F_psKVu7INFq|ah)f^FQ~5FR3lG8UiQ(}V!T10;yV*t*J)WY*8pnDdCI95m_q zDF0u_m3bycoq=a)Dsq21BV|kLg{7l^=8eN{eS^4b+!9$7KVuncq#ZX1GP?y1Y3haC zjlKLR`Zvu_i?VWZl*YavZ*#95F+itUm&QhxEicRf(i8=zrigRJN%GU@af(`iEVzs&S4&Xa#E5yHpt3 zZ#|k8*UuVBca>rz8;-sV<)^Y{`RucbP7ZXU59JgK7uVK){3`r7s>wB7RN1do0JxC~ zb0RmY?kLP^aHqwD#+L;cn5ywe8wo)vU#ef6&8t4*(Z z(5nVFOM%uM#0a!@%qOh+sJ`50sw1%7qm_*d4T7LQ488Zo47A(+fp%_Gpi%#NDq3@z zwwu2|Cjr-SUc)P|I+u=v^Dl;#GWS9Dm3g;)q^DW{{zh*na9|agF~WNrrpV3+>(3Jes&`~*Tt(XMO(wZ-)MR69_{-WCmtz||8f{lyBxcg z`}ee6g5FC*v`v*)(h#j}b%N|u>)%SxdViB;KlcaD>qH?2#t?@Wa0!=WZY!FI3U?6- z+hvAn(TB)p9~?T}^k>D4_Z;fyZqT_P{majJ*ea3tTWpWmxR0XGrlr9``YM%oCdAGQ zv|r>I=)BT^Nk|w!~Nz8-WXuzxZ~j=h5KmzE+|7G8D362qTYQT9KOM zZiO21923_Zy`Z;hG-=eo{7a2niWzWpWw%2Us)AXzHwBR9$!%tb&hjm3SPnB?@TT1O zp6BFVHB|O_=9OWt^=eRXcPltWp2a z)Kg-ka{_gemFnC)8k%_o(%uF{LwjxveTWffEy;a__Je230#%S|dvG}0sy0(d1rdX75tpw2HRvX{mRi(Ios>%DHj}xC7 zm;KbZ-Zws4Q4Y<)Z=0h*e`b4%Uw!&~{yF6HWs#>89V~2WWsQ^94=c8x`}e--QZ{4e zBjI1A((ALlo>S8~hrt5nZheF{OpGUbpTfJ3dOKiHbrk6Y!X3O^Z&%aTJTaz}3@@uq zc(`un;emQIZ4ktsj8|y#T0LOd(d0qKD%C$v>dvZ1`Si~0f031)PEFu>LpF-v;)Myt zo6}jcoBZ+v=0MHT!u$vGe>w`a$Tw@;$8y0;Y7Q>t`aQ}w5_9Vsmc=@heARMff+QoL2+6)Zl~Xbg70bSnOaJsN z{=ar>K*qwZQ&|^r+$Yl?+5}#x_veS=PNH>A2d4AHOQH~#lg`V#Cml_lZSF#BsnZrR*~Z_ID9Egf-6yt zA{Z?W3plt%c_2h1D3xJz+uuHO5b-km7!bChNPrq1)CpB&p%3L55kaQg1j&_v%n2wwj$93Zg?JyO*O`T`6YtM~oZ z?Wc!8DzHk{Yf5Hfy~CpySD10A>vUrKwH`?2>0}LD=$B-`7T~fKfvC)0gDaEY{Ul5d zdtKQ~v1bZpCHJG`|Lh9Nb)(M%udHs)9ZA66o~5B<0>(Id#U?7wd~j|09lxqR>;80j ziY{*W_G2L`?}uviY`3NgWa8}|QFC-T)2#~*dgzQ4s3fC9892b*o~Q-aHsF*OTHWqm z8XOuw&^gjO8FI(?h{*^=BKCG`upmFkEo*Jz(r)hZ{^T3sq^81yC|fZP!*KVF>k&^n z9(M{IYepUwFw+=THF{k52h6bktqhJ!K691zPWYUbOLpu{q2WuCFIts(Uq!^j zcb@R6>vVY9&O4HPGfKRwfUn+*0EK7iLxqI2x2NmoS$? zs6g7cmj=>4Lvua>K(!%@zg6sWYo<`^CbqoEeDkwM@IKK11oe}uSv%${>s z?sqe&BA)siZ|FMizZXUF=SE_0r9s8!58`?Ou-Kf-eVIqLiW zul$d&ar^fxG;%-ZtSj#RTRwu9n$NIvbLai>)M+I9VJO@f78pp3V-iRbPpcoJi&JYa zH%|fPXi_v!At{aFwSaSl3cxV>Q>X8zS0l^I%gf5vHa0e_kaKf$NahCn2Rz_2_ql!> z*nPXd!DldOiJ62^1egxO)K_30cyjpo|LmF*C*+qe51f#hnb#X!@c;(?Z%eQMv-*FF zTc^-9p80SG81Px710Yrk+dm`$vMCqDTeqH1>jCq?9Dy1#r@AOTJwR+Eozs5R3!iy zY1h%wp%>D#0Y=wWv6aEEbeD2c^cKIK5&2>QOc+82#}gx~3U|p?@*AS7Vb$IN9t($E zq-xD1hVUm=*cRD(B~#_mdy4DM%V#o?u4R^=+>Lw=noEAEl=S6$oNHu1W#F?;Fnd$G zK|D_;vapa(H$dk;T4SE&j6S_`RtYrxbHTR08_?>Q1tqwXW1@Tnn z$8X1D43tv|69%McpkU~qppyDAHPjR1!Z-FQZcN>Oc-J@-9xvsk7stnsR@e@Eyv|(i znbSyU*DbpLy7|$-kh-Qd@7QQmRkuvs_rP9fcIvx6#st(g;g9PYe7^LbQNlXOte zA9L$X2e_vuDK5J{aIP91Y_QrmeG6;q46ixpy`#1wDnTYUH2z}dVY_J{&{9XWx^f@& zTeTAk9T|5MwXUi^=#&z}gaYF^#-1$b4|Qc71}# z)AP-inScUs&-Je#q!VvjBjhBc!^*;pY27^*%nf)DT%Aa1feWCz@?8WHKg!zFa8@#H zPOw9Ek41G^9ey@G>32NWis!d$jWhJVEiCN+YIM`$=yO4N`!!%tS1vugjH~9yV$&S6 zwB*KJ>+z^BiMl3FS#uG_4;?8k_w4@I2^8h9%_19Hf@W;46^&Mw^Ub*NNfglwsMQmf z?S-w1i*r5MENJKhK1qxvrElY)IFkMBjH=M;!vR}Jgnbv;h|Xlco?qE;_{jX|195Ri z8_2SrouPW?rnWhS;TJ@t*U7UnYf5IDnDI+EFB3ELtti#0@htn1L;&$(|1AH(c2zdT ze%Zb*E$YHw!%=%4i8=6`oJx;m|GuJ#`kUc;0g4rDpKJaRif-DvoJp5jA=mMT4?Bs* zuL9%s>Tgm#wV5O|a_(Gl6GrQQ;~J^WGfoEqc;SrY6Zno<5hie?HnQarg3+79VqCUE z_=Ai8$wrx5-3Rns^fW2K^4^0S??XlfE?7^k+bzE+n)Dw+&d6X-*V(CibFz02Aljjf zlCs|GGuYg!B}c!Fo-w`YW(ohXAm0DDX+)cC;X9Bf9M-KG1t3s4oo zwz#^3i2gmFZscLJ>Fy>`W&}O!@y55`_k8wB>{|N|P2P5Cr55K2mH|R49LE=~$D?`i zQRZ(OR@a767CQNEm`FGal^zQgePdD%*lE{wy70)OYb{mRBmj^gkW%pE+_cg2gqVrJ zSQ125vyq27j?H_Vi0iOuI)SJQDf+6GIBt{0i~n*jKDh7A)sebJy`jxrE^|kI*`#v0 zyOLH@U;L4s-#J`Q!amO3=iRKr-(tUvn<0*iR6IV?HQ@nd#h5U`-%Yrhb=wq6haZ|U zt$#`CxEZH=#jSMDLpKyow;Z+VAsDU)VKBJ-+3$BYn^5fdS~Nv)Fe+d0(j)DAcvJkY zSb_$L5XRH4%a1pn+`qOl6_xOfUr55_nT01@;(Db*t_*GE14ckTwdLZ?rtVo0fi@YM z@Wgi7)Esy%m1Bq^-Weir?j3fl7jitsDC_ACTRgl^PC52iN!68>mp)eexphHD9&567 z455ERCt^Y6uEbci4rN!$mvc2~{aTl{*7Iqkl!KhLhJy=x2zMzqR@qS*@xH<)JQ-*^bEo5OD7HGv;X`@DT|D68EN0e@AA{jb#-$Lg-c6IMrggQ97QZH zOl9aK-`5Vv@*#SLz1{jd;saxXIb&vWso-nG*NU@2lXP!lLOr#H#pQ3d)I|9QRMU&w zrNYbI0ub?@6+OVzM-IZmg2~45xoIuDS`G-#P*f6eBJP~|bHKHSGWGPcbRcJQ2M6iok|h-(eOFhUFBt0Q0iCz?)^mV5SP`6#$&11Mhjb8_i3a z_yyIwgfCU^3PJP8gZkKXR`M0{wcGVoiA`b`hZnW%ncW)dH4Nb#*5BE2@ zDaD(dw#38yL1okZmCf`BlEMWatFRy3Xd4p3Cymk}dl0dc8qpBxuvrep?H)j9$-&S` za-8@k>99iqMENmb#WizOePOQoh|*wMISIVFk*2Du>V04#SmM~n_3`Adu4}Zl+I;Uz zKvur-*I&O2VCJ&bg%2AxqJS3%LezuoSl=P|7M5uI+D{X}M&o(OF+v}R?xn|HnRNFn ztjl%z>2zLoj0}z@&QzlhRHx-ZhQlEv^Ywsr)f!D z^C+io_w~yvjvf{>SU)+)V4n;0AuDWFkQZ78s4WVE)GwUNb0{R?KpA}0LVdE23nzTr zoCzh7(Bjl}v;xtp;XMhe9JB+)g`dDEm}*?p&n-~+u9|~G!E^+x_7yr>yY{Q<7k|>3 zytR{Z55(=+@xB)GdyS9+mqD{jaIy}-JD9wR*Sr|LuU#G3J2f*}Ns~qO?~7X{G$OI5 zUdOk{5eTAg_my8Ez=FG z51D_|f0!icV3m}NdLozxzj8^*N`9|TmIHmTwqX@HMS0fUvLrEtLIhevA?u3MeS#@qk624LQA7&sTj~9v~`y|HtyD3~;QwR{KsErp*yseHRlZor3a&4$&sCatJc`So`iiP;n`SWentlA^ z5mC!xeeugK(*^e>ZMQ&sSm4LH(3AVbCo4_WWD|!l;qHCY#0{OaHW$tP_tz&QLZ6r& zZCMq^%*o5uEqwi+w4mz4#T~vo@ngT>h4_XiX@%r~4h?|;GXm2}G|YviBDj7MhvPK6M&C z&B?U+7?%ff6i|w3X=#=-K>C(`d>iO2PHy)=GlsSiBP`4N-1lY_q-2z(732dS2ltPv zR=zr!9U*hWJ{}Z+)+y86ft3D(DJnssTsETRNSxd4B%xBemD)#yQSPsYZI*@%Dvim` zm=FbmO;E`BbpJ_6XKqAMck&?h7(!!s@1NZ5*Pj<@ z{4i}z)(+`uh}S&{Z5=&Jb1PlBD_t8+eihX)Dt_mMrhbxv@I{-oYpBCg)i?u1rNf5R zP|(hsB7&{4ESQW&6}blfmx+ z4ZT0CSB$S4W+HtIJjGUzJ79`L&4wJyU3)A4%~4;T$tk77@!a9ru>Bkmw2zbaDUZFJ z(BkjTR&|-~n3B}UlAf+HTK+yXGN#lq(&oU%aqNO!yJiL_{d|Upr|%EKDD=r7 z%9D_grs;bLg!HdU1~TMqYS8?K0K1N`=5e=J{egh(G%9#Gm+UfN8W0$$r>ED1pfTL~ zEp%W4$yh`fOicP#$MCIgf3S`?C>3b%Hm79DCaC5k%H|o;;cz~;d1cV&2Dz(#D5tmu z7=SqLF^JqDVxh_Cym#-iW&_=S4WbN>!Wwcz?X7~nmIDAm*;r9^=uD0o-h-eDckcXv zpS^##>IRD+(0P4SWNr#4aObSt$a3R;uVcz4uPKwUCU0qk8&#N-_N&hK*^fOIpx`I* zdFvcN$UnejZI(Ch&Z%|}UU?;8b6w|3Qh%caL0ivb{y1Ac@_1AKq&Q5dA@9ZtSKGws zn|r2@?fUkWVv{+2+`YLtIRlUXd}{wY&jotUY4%OP2ve5(YPQ=(Zb`{%c*yF&NMMfF zi`xEkwE~vT8*@^mq2gH7VJ{{*=t_i_!?EgWHrM1R`IiS77yfCJgCh*JZ+u`j9<01) z-Fn~%uvjXwh`9B@@JQ1o^- z8P5s|{jQ4uvnRI!Ba7*JbFQF=lIrMz-5T1-YPgbH;eOqnv-wGd$9~#QkAbr6j;z6z zh&99)G*zA29XTGcYtT$xWl*3Jwv)0^Bm2)Zv#Il`@B`Q<{2+G)Y?J(Hv#DW;df48? zp$sKn$WuO^&bvn(7|acEHiJ4%2dw^BTOn#(j$(pIZ;R!d>o;Sby)jmM7YBXLr4! z3$)*dM~B*P!SnWEKVsWp+vdwK+v%g_!JxqXU~eVzG|Y?=M)f7VU@+S(WiQ=)D6^-_iSP{B{v?}xLuqbiMo~t_`8X%T z4+1oX$IQwtO#%oSYSzhJ#+E!{Fu4S=DEq)Pa_N&iBz&=2lsL3 zkA4vMVI^qwc$IrU{P5TYb~L-sfu7x`Xj)QEJYH=^G;S*~jN-P6c42{`+V7mRBX2VqTzWX2|B!|L6h3=R?c`4tTElt(5f(*JJ<*4{PY=qHuxxyi0*X}W& zyXs>xy_L2+t?j}1NlB6z(er|(+$xA`vUc;w(e82}uY{7)de9Az{w!(PxhDl4h03nW zk|u{INEFIeFT%to8z@KhhVsoQE(*MqF-m5|I^ui`@}wO5@7z1mUtl=*x!3vBA3pte zjk2#7Qd{f)GdyBp;G94bBp4fDfZZQ(Lei6a#`7mDQYZKGC*c$eA|&{hL4#hNdyev? zLubc)$5xc}Oa-_3_S=k;Rp91YzTPIe7X__^RuAf>qGu1!`A! zx67y6^I8#A0}(X?!%0rrd&_1N$!A%Wu8w-sd`i0$OXHPt^$EVJ*&pDYq7lSN-H{WN zXV%!6vM2wphzhUq(THTv>0%%{Qg`o$?C26#!;;PF^aSa1HXqvl%3ivV*kW+^%#Ws$0FRn$ zGYUNchZ?!wRqlDI1onH?Cz%Y7R-L+|1U{-_HZI0RN8bf$w$$cpy`(#!f7JQgs-Cug z;P?;?wFAgR_|^qDBKZlw2x1BrpB8={AuAS}DjfC9Y7nq`*onP8Y5vi?efRe=9#gMP z&%j{63Re{&@MXP5U1`a%$4}<%BXFL2?xSp?pQxUiJt%OC_A+H2_xbbZv!Fu(x;yc* zNWtdA3#K1KCoV}EU;8M+K1pZWr4M8|jsoZwt!oK4Se~Z+OG)X@0Z1P6ap-j_BE2NP z`sha-(nizcO0Jub!gRnd&k=-wzcjI*_^RI|u)i3Yon$J*iG0UV^N|!sfM>-lbuG!g z((7L)WF`N>6mIk()ZqZn+id^{k@e7QwBr#ItsE9g$+#JQBVKoRFheEl&79kVKIvhu z`$vLlC|nioBd32@b02>8uNv1n$5XDXtSW>w&l9~A#?f2t^n)PumOW37-DKnAg$<=J zBof)&(!zGFgzu6}dWguqhvrx*>GdWsA3Y+Ia^v>v7G1swH(`3Cu1&FT5ac2GY$NOM z0>^I{d(lG5QbJ;k@%H*2!zDq!_j3MAi#>0;les~mJ=G4~ql%B`qeuoe^UF69a1ERh;+AQd-*~(^Q=QcR5^z^_2ws_3LsGq&ie{&@D$~QFd3=kVkmkdivV`{@yG~g0akJ4!Uz61`^6wgU1=z&n$sfn= zw@zJ)n`*K#2*2~7`g{@H2{Ol#)p?`y_$BFMv^OG^-2k`oQp&)euxt7bC`N#tP;7kz z`YF!d0tsbSpu_Q!4c?WIa3&?b@y@Z=myJZJk!ZFjUBO^{96v)koA9o!0gwuY%!u$( zw02~~8=|@{=SIcqSwnt?R-OUUYFQA`J>VRWG*LbE?SUNGFK^oLfyD~`8#e?{Z35cg zOD9HWaAX0{OKFH{bdT9=KB^)Rh|edIJ~H(J*#dyybXw!y={opXs&rQ;1-OI{)+g47 zTf2D;Ye2|M?C-R-duX7YqkkGm)=W~oxfTz#(eBz0y8||N#yp2Y>n-0Eej|UBj^&k9 zwYB>ilit;&`jiQ5LpqL`(HMsd)mW`sU42wxQDEn9D`oWj+qV3`Hanm46g}LuG%^}H zC-C;umB^gz=O0Y1Hp`cR=27jbh~$3VZi`1fVidF@k;>}yNHlG3S|I~Db8uMYF=;Zq zXF2tCxNS2UXBErDy1!9bn0%h(WB#?l32a2E`VI_3>}Sscv@@H>6%#uH$| zdIc)Z-ZO~qaL4KADveEWxPBm1k=A2vVguaAc{+i7%f`N;jYF4CVk--44ANzXwInh#-qoq zrV`b(Oc>jJsc+-B^$R5>_tRZcHT5WSD!DoTIR^31bu8uVFST7QS+VwXp_8jT>#l1! z!o-@~vcS=;JIrGdb9Q-#McWj7Kj1PWPjJwQO8X zKA+%7jZLC5*1Y)7>5j~D&ir-m%8N2PMNk{)yMm6l)V!SBWcw05RIH(p{DSR}GQ|Q# zZE|(;QpE8eW~tTgf1TH-c-;LxhfTZvJGTM6Yvk5BpdNLYw2{tmmg%48RJqzu8Oo!$ zZDh@6Mb`amGzi15Uc&iTKS=^4Gx~e(_^ilG&b~tYWtxK(ETCrV_f_v(iX_>mMiIE7 zV5P2-4{9QMw}RvT=n%1E^9lay-pBwu+|k2vH@s_xD%qnb|I;40{f?2Z$a|YBk91%9 zKTqZReKDU(J7aYADGZ7_yG-Bg-=fp1U`+mR#7dP$c3ICD)k#pU^t<)94_H}Q*_2(n z_ak)VS+8!6AD4W6)k5<`?X>+B)-=T7KK7mURuP~``OZ)ONi9;gfX|UDDLWjVk_9`g zV?s*m5uYG@;TiYr{yrIcE?y3lJTRQvq* z9i5x3aaW093Xj#hf&ur(>L?VGqI$nUaCa@*WsiADepE=M;hAG zq^jTkQpx&?p;jxHv?A~~f=ltkuZZX7Ssg3m;?y^KJ@D$JZQk69bN_yi)t6iA69W$i zEBgRa1`xj(Pt9bnYiYSm#FoDMC-V+3>>2E6+~JxsKhDSY_xYsw1|owUu!KWQ3bvl8 zf!w5`1^S^69*&5Y-rWndH(5BXCgnOloL$VyxA@l6yPvA>Jdaj1N{-&p15EL6y!`ug zTkIg=EqQ`koq)IQz?w2PC`Hu8Y*>AHsz0oE-qnSvPEf`yN;CKT|2QYbKNDm1#_+ug z!k7raR{p^ndEE5fhp`@*g_)b1Ltj&q5%RqsSr%}&1oK^a6mLkUMy0C&wAtp;$Xi4~ zd+PgVtJP+hB&0>wIE(Z9m(#$;Rsu2k&z_aNT>|0!&;Et5&U2{%yvMfzoSgz_`Te(> z$|Hu4L2zR3J>{95on1uv$?+Ti?yoVE{jMZsBZY7_U32sGwg_-c2gZ2*sA&Tx?DcQ| zgZ~tfv2yW@_StK#Y1iq20toG2UdN9wL>Xl)`CJwV;Q5Xi{?Va(Q|KE-_~&=gWi&Jd zPE);AlB2&Y*QW!UX<>2iM2I;Jp#`ma1qX6L75}ecE3;m0D2B$@_Ppd9xD=_s5&4W! zwZvU$T&?NEuMP^nsM5jmvTe`Rhxco`sctomD7Me~9^*^-v941T(Xp|0byq12S%fiX z(`9}m#dTT6Qkf+K{$mo4>7cFg3c&pC3w0vs14RezSoHkO@((DiL;{E5 zRe5t4zd?SHw=Do1PT-tzqLx&k=>A6C`IhCQh`Y7c`{hd6fUsUqGgIcfPfsJxNPM*4 zr%<`7VmiA8&r=L7FXW&vd2WgOwU;*EDP+Umh1W!pFcYW98CI_6dsYo_d|y2XpbRMv zUz$N5GraK4w<6QZc?DqyEeY4781B9d8hENwZG2hWGW1%23Zj5zwmC}tOf$4P2@?M@ zi|#1&;$k9)EKDh;U0UZRf;3bZTvbbl7tv`wYDPs@~EbQ~t<^nTkLXyC+1NDyJ)bysF@NZxZwA{`|L(Ubl7a4s4&+yld~gnwpm8 zRoCBg9D12WVezBFRw|n9y~7L~LY=sUK(iH}`N32rQ-;Wiw{dwhte6=_N^kncqk`)X zv&0|X(Cf+z+huY!t}0m}B3T=@x!Tu`HcO-fJ$80knHmU(VWdUBFaz1ZuVt}G0r)x_ zB(d-P#4yW#yX%XV zz?CkqyYXf(PufB{t0f=5`u1J@n2Fw))WclylI@lKWv+H{78Wyr>V!OP?q|Imc;9(%vi~(QOvhpA-G{R5 zTaEr@n|}Rk4PSCrS$*C*U56De9?1uw@M_zXR1(C+rXf9JNHi38uuWQXUm$Jh zpzu{ydPi$HeMhcH5BO4*eBe?QA8g8hC8++(23Lb`d1>jus$6pRB>~wDpCSpR-dA>z z+pBgls1OTIPFQ#=B-6LrA~=QigU*a&d=f_~;sSd`>OVIExt8Hez;3Z?ZIOFksm+ou zfZ^~pngr%NjTPyMI>J57F!SjP`mxV3cUWZPAHKFNdalp4Yrv(J-%h0)`y!2T!d$Gf z%FWre^=pIfn4gz*KRkXaC(JvEsuAQu3lnci-#Nc}LvCk&^SwkY<$Zan{m*?UWRd)C z{);^WUES)b6F1-glwAY)h(>K8#7h0nX-MC&=(@be+fvkhXG>qVc}w@8(sD1yZFEaM zSDOSgtKXN=ue>TM-~a_Ke)tf2;_0&b>EU%&pFmgAwjVxi3Uk=+iaT;s>4#0!A;*Ua z{nEa>sSIl?NE5~E%JhSqWAP`{95I;td;iM+?!oTD2Fqp>8?R@AR5fqks{Dg$Z+mBd zM=y`1&ua*D*j>hhx|~CKqT;$r&^Vz=e(5M>y@G`CHg?5(ZJWyt>|Zi>@*%xgCLKK) z-uitQMbq#RB0 z`oTBD@*_E{#woCSfh)x?htUtkShvts(?%qObyKlOO3D@f?ok2~(#01z;tv$oU`i#-{C$ zuuAS~%IC_v1v)z~eg3e&Gd*xi+G|Y?RBx)Ng#C;xty09nzTNBKHWHH=9FhhXlHP=* z(S)2qSJ(0$tE8E>yM^`VjIPc3Mb~;E-^1;v0?Z6@K6&?Hoolza@(J=*7!lE_Lg5<* zwYsNtQA-mvDcyMD2CF9Fqf5^4+tJ}kX|Y$Tm0na06*(SzX#orUBW^0kUq3U9Ia>qx zbYD-|`}_M-QzUD+k~0NgSr87ZAbXv9e+kZesg?^1kqzAV3QsOdf8U~%M9Iau=IgMZ zZxWVo5{mT2Uve5Q7z2gF02wHHkH-1=O>d%MtiE3-@v`;xnPv6OurN)19vHKvZvndI zk+pS;#>t<7t6Ca2N(#eM_3$`!a)zA`%H)ivG`r(2+DWsh>=v^aitJ@gQOqs(L`q_WfH6|O&rn` zyI||w`-viUytTEpC=_Z^mxBARtR3*n0BNv7v7TLI^@KACGDT8viL5?#?_5$?=$KD1Q{i1o z@oleDzAnDgOMF0Tk(ZG^Dhrs+=2~Vk+OF60p7#5?KbF3k#cS31zJ$R**$nNV;U5HR zcO^}QlRPxP>?X2LWnN10rEZ5@cOGk4*eIFR=dyfM)V)p_lT3f%_{%jiBrmNgQ>Ve3aLa62!YUZqCWg}$_+^+216X~JnLWN{%g z6BCp(@jkYMETX)8ylBsn7nIz-dV1`E%|E_q2OUV{MMJNJEy%S>xTjZmAEq^{%QLOe^|H~OK{sSPP_beF^9mqZ?SGJGkky?@gg2%t_JN!5AXSBA84|^{bpac z*T&^*^XIA7ZtNW*(MMC7sf1J$P0}tli8L+$iukD+bC}n*ilM>xHFeI83A!V)NE?v0k1{(6O?i1Hs_-p%F--0^|1k*uKJc-rVk z;rlk`CZ9dltzFsRuTnh|BQ!1u>tQ#nZOoRtIsAALp;vtEmVE8JNAAd*3KRGG&j+ns zdMZKk|I|nmw2%v6M%=>*)6oR1W!CH=$L)o^hhe} zX13v%zXtzK2dGgO-mS-nT)O*U_2e^W%ih-O)UH#tp2lwq3VJGFAbCWVt{%CW9$}pa z@T5Qj9#?enO{7EHRSLoF|0+XQi6K9kPP~mXF*DrSZ{!nz#d_;v^t?H*;1fLSJFWOd z`dN@ic*a?(2610(ezW=H4UfIhC(_7uQjR&!e|~XoB5>Msf`%CxkUy7RzAujT3WM;plaBmIC{!((R74fYbd*`C`WS#YKmzS;P4D zKWZuVp>%SMdBw#BFmt^T&V2pCQkKqL(aw1%l*YDt_&V)KlBM6?5r%uEiiLtV;Y)5D zqaozv)ssn&$|4kEs@uMh%k9fW>B>;}Bs80f5(;t_Wb-Hliyw&q(tVj&CJ0acNy#yO z-T1o&jDWM)P!hNjKYN08dKd>{ZICt*yCCp2wDAMqa_C(n*#8E&<l-M4pvs7{gSfEl9`+7q zBE*`1;~1a3(1srzIrfI_8;e!l(m{<*>4o5QZV+w>(X&TkRTbtde?7Rim+5Ud+kyj}$9WM?(B;i!e|* zs1;n);g}&UF9_WAQY!1t2!3HqF;cn@&HgQWXotwpd{%dAR%8~Wcut{Mqy`$R_=QB_ zOlfM#p3q4^FODJ9`x&=SiMLwS!1FTm>sG8WF_{bbwFwKg31ViQDB>7#GctTJ63`Wx zZ_@JL)hnHXBzynKjQ#>{beXBCoq7#Rdq56&HZ zLVhJoB}836Gt>Gz?&jAKjc7=}p;^j)91RfOzIL>a@oycS&r`(fRrNM|uKbx*Jp9X> zt#9|Uy5&bDy6&sPJj3UkLy-=Au%Xbjt=3>+{%^*#a9+g{_?_BO5_Pu&!xxSVZlw4&G_e#|_cnGRYj;<-b~m#wsuA9^a&T))K}sDo9A**d(95#NxGb2!}@H+7Z4znOylITgvXX1^E=p6*oW0xn5EZCp6R-h^!4ii^7c>#S`+I9ujn>#omP{|8E2 zw%kA3J}1CAz>plxD6uwOmIIKqx;nonPt=;ccRO-cnrcyK2dYfAODDvd7u4@o*X;MQ zkKNXokXfl3wM}sneMR*HtfSX7VvFMT9mL&cm$luGvjQA44hE}p%ED2Xj6`TJ9N1@h zvYmGJyV%&UB*&pV?-V1h%`y3*OwzDn2UH})rk553C)nOsK_T~Ttk`fW(6qX zHP{$B4Q0xHFEFN%=0~dlA{)%koi5 zm-Lc>5{bL-Fb~32n=3$!25bgHDV>LNa(wBk>X5uEDq@Gd%7ZS(8e*0Oa#PExMMfZD zCj>a1pbm#JWt>$~PD_4nZS~*j?CRY>WY>R!71Hxq6>X$*$eskU?erhZo#9<<(S@HR zv|C5StjS+D8(eK@=ua;nA?Ynb0zWJqb%3ittha9gS!EJwZ!y1L8)QL$6Oes`VD z0+Y=g&IJjRFDWy5veeK_pbJPG+;zQ9N3Ns#p059%3pNe!*UfkXN`?r~-VWwNKXM@n zz*4}6Ffan}h3VS51@L~_TxA&RIX9+`cLtuypQ!N8b)pzYO8DxM|OFoK{-TwT951oT6B~ z1Hkor4CDo1gK2Zqs`Y{Dx7I(uFP=5zY=}aq%~e>sA=&jg3x~L)d;|7MM)sJbO~;I< zKjh%wi)h530b^3=H0;pjrU&a=qk!sqg$_I#atBPZgVobrRH-gHW(N@AC*+YaocrhT za1qSzfLl`L!nmgSWvwp{Y}Bofhkzdm(+kr@fW^L9#3u-&yu+D)8l^Tt11v@1ij(@Q zwbT`jYl&rL_jO9byLH3*#F?cg3T}b~WuDrjTR}gbkPJw^AS}n^8<2??MfKpaET|b( zvMeyG8>T=1#qr@BBl-D2_51lt<(z~%6Pi8dwV?I+T>z~Gw1?^k)LXy~UHts+x?Emn zK*I0P+Y}(y%Yrl;H|C!VzK}cgmiaLqb)s-mX%~QpQ(J3kN2*`3eHb{d*@Lj{pfS=r=MF zqfZ5`i0x%sMN|V+NM4knJh)E)6^B*Xvv9;kT%Aiq`&%Tzsdi_q5w#WC&=H)Z+d!Jz zuC-N^3OM-uf|byVt({(CCC%Ac+2*wfBqdU_G&jY{EGY3dF31z?u#+2jIp%QtoQ6b& z8gcbB;iPOHJzBFSpG+dy3tpZ@r@2HQdN)3m15E;hnAqGEG$kxj(ilrwaMxwoZw!zV zU=FsIr$wz#BO`2=hsrSpgWK(_iz;cLFA6AH97(AG^^U;QBJgYXuAXy23qLc{Up1*9L`RE56W%rO3_|Z#04rb!Ws@H? zM5z_?j@p~#=VQ6pT$b6RIY(c0AQpj5No>Bgb*R@EGu%JKB(Fi&7}+u3kqD|;L9wQ8 z3`ks!WC1Zm8?Jh)V!&-Xo&+JQx7{E30*W>q{5}KX!aDyltXjw2+Hu!#FN=C;xUD2j zQAajH&*{zuGJpuvYew@&bjlzJhn<7{ryDit2rF2#;?#Nwhuh_N>Y6eGk+FB!edB=4#*@!&~G*9#k#n%$ya9Ce6*ahs(`8S~va(`2pkgSYKB(`nT^VJIEG zGwg9>Pf)F7;g0f?mN1$#Tw%C4g%}sh*s>-J)VkNBb~qH?71Om;iNaKR<;DwCGEx&kYzbOqkOgz3=-$ybmxoKa)_kE4s0efi39v&rdUbvu=kkZ2FiNR_ z=H^wf%{M&0#t~0cL9-(e3`i~bKC~j!=4fxEs=-iVFRsfsq3n_#^5w%b8cD!LQ9bvN z)0eZCRl0T^CX1Wol@D4=N)3ZtFsMKil^q^gD_mPLEuof-QvI0X=Ht}x&W~WjnfRtf zfG&B*YVdBk0M=C1Xg)sZC=sdmvHVdY7d%42$fr{U6`^<``w|k`v}4J3zy(z0m|dKl z|A-ESw?`JhuY+o%_3qQ+x6M`RhI#B!%*xN8Nv@!mQ9wZbbYfD7=^=Hu{I2B9luQ{`(uVJbAf`r-b1WuzIUo%YZo25MGm` zGm!YQ=AqLV1yv~@Vj_(ES!5Bf=cR+Hz$?Dg`!dwRr=lDzw z0R*akbghYfvt7LEgXhRp0=_)m&MphLnwc~c`Fmx|?((=p@nayuKfo?LqFN%RXDZ$5 zs-8}(1Xf7r!b3^+d+}DCp!o|c(qFaP0=1>BCOz%9oSr+ zSxcpq;ENF3tG>MmYV{iA3!GxsX$!4Vf+Z<$9@B}DN}^`XwVsCJb}0)Pm)mKx3v!(N z=Til$&{zbh!pdgm-ITw1$LdCVds*Th^gWU zvp{R^C{beN^uk%C<5O!UvQSP7Gnyl&!h07x1il>VQ4Pim%pA+*R^P`AF^qK$m-zae zw`h!5l1nu7*c2I52jqfP3EdK_b5$DhSq~CBYV2)RWtp}Z9cdb2PR2^9<6V3Ciw3_^ zMJez^B*a3qKh0Q$YipI9FDr-Iuojiw`RE@hx|k0K-#zfuRu#-EU?X%Z9s5%@69QWh zP8b6RYyDO5{q(C_>_o_HsOvS#|9`$fIyVXil~zV z!FcqYUO8>aqxT7Yo^-tHd+0RZKtCZMw0D53`JI8qMObQPaq(GjpB>Q#lk2|^S{&(!4mO+<8f=EQJi#L3Za+eU!p5d_%I>LeN z;}#fO*m?dZ-|tF_!bzjhl26yVbSqVZ=f6^70bQzWAL?1_y*23PC-=5+IU2P&gRY4s zQ9?P_r9OD)*{$(&3yJs@1ufA?*SStjl~p|Ct56aGR$rjLVIjNFPfZhZY05oM>*ZOt z-ih=a@L*S^tOZigGk`4AT*gCN?W^kMDb1cBsEZAl5?Q4WfMZ|CZY~Qf;R}0ftcu!t*b$chYzK6VaiN>f z-H{B1o-DY$3D1*=pY*p_nPQw+lO76sV`b?h42of;;jb_wfZ~)#M6V-Rd>6W1rIK`RXNT&$#@wgoiEn;JTQ8<^zc(OUF-GuIaA(V< zM%|ZCVH9oTZ{m^x=n$X>YNFRfL31Ib{kPrx!S>6%46(xzcy<*V^|8$?)|93ATM?bQ zc}`;a`Jic)Czdt2gR{Xta88x`d6R%O#1;32v{f93KC9LStytQ^25enbpIK~ACR||O^{0}9b6DcYAcs+)#&OVmi<=?N(ZT^hFsArGQ+|TikuX)Gpu|x&DM)! zB!aB$dd*BAYm+h({HFYT-)C<3R?Hwg>(_G%US;ZG7BEze>Nhbd4v z$6qas+w^Iga!`qH$#4LZ_hL>frfVGBu`2ucAaUbu(*gbp9BsS*SuwdHV|K_sYcN8* zQ(Q5f*7hnaJRm}VF!qHvuNqB zVDnk{fAH;r)m4l*uJw0m$*)&s%0zhnmyh!clugL)VH{4~C1jyL2Ie z6RP1%%2_RwLA?C?jJ|d2dm42kmr@)uBztq*n3TuBE?*C|`~RAPD~LXSQ}z?~3bi@&Nd80YH9J?VLa-?X>!0z+)D0?&p5 zN}=SNjtDt^7T66{#+7(>qk0Ic~laR zu@XT6D!r-2X*GUMtpYLP-sd%;z1I7YQJrIBPd3q+y(i2Aw_n-3>FCmD3%kfuOWLiP zU2I)jSE|Cz^wx6FEDKrq{3-%9^oGHX?li|)amc|!hG_15h$%4V4ekb088e%sZGty^ zeeNPUP;8mvq>-TCtDwSYRU6wIfAkq>}qRV zGyLv3-+NFU^dKuU=xvENM0i1A-NP?PArp}~AR;(Ec`5Z4nD<`+u&Vw$vF_<($(m${ zmJdnr!-q%&5vqn_RX7zhVv=eW)J^&VT~u(4n5l(Y`f*SG$yx zs*UlSODWRc>r@uKy!MRV~lMj@?QOw2px!1Jyfc|ooFYbbmWa=C~ z0CF-ttO_~dQ8~q;Jch?3JK@$g3#v*B5B9#=kTgeE3f!LOGxo}i%WQmI+xAXCg8(Xt z--SS9m+zS7w)DOg5Zj62 zQR%hku4wI9ac!8 z7}te~?tG3EklpHFr;^?Iz&L@G!H!N3Ni!I||1ln!pv=#`Cvsx-yiM_pbcN(2n(4MM ziF}>wPt;u=TA3_EJKNd`K$Ix2p;As!A1)oH$qbFk2u_O$OJ+nRUD1H{$~~&q-sGDt z)>XRj6hz!^dWb_#fX7xg5b;Zxe0jp6Ca-<~F5i5r7Ke-J>&tUr2;410^4LrTkqBz~ zg{k!jQ)K0z-l^@kI_p^TO%{u!6=B2HG| z#R@-v%#cz!YhlV~#hzrV9)D2ePfdyp4-F9KQ>0k}_brsr{r>YJ zRoK9~hCt#rGH5gV#TA6KFp;qH2IRUZs=a!)UoCz2G27*HbjA;kk|SK#i(D9>!J4^I z!UM$62C+J)M*O^FNXB8MUSLoVK|N>Ou~r3nV`%?VW!`Ds>D<~NlP~PjPP@Z*vVzy#C5R8ItLJN z?wEzW)rmcD?HY70nPBn5MY4X3(qUJ8fnGY$au)ygU2Dpdmin6YcD+f{G7qGL-`nIF z^!uZ;mf*AenTaBm2no3)-3P`7UNh<(Nnt5?lT$P{(FA#(x{V5Ej2evp#2JpFrL~JE z^QKGCGvSLZ9s@+BPaitwc4}`$@4da7&de_e<8j{i$qat|IZT*doezIy(csLB2p)Pj z^5hc2w>sadB=OIq?ahT2ubYHR_P*iUc+T@Y$pBFo7MsdV!W0L72?|?sGCv%jAE_K3 zlBn9{KuF_vlUR<(b;h7Gv;RUJR@V2khndN+A<#{t_%vP;hs}Y+lD=)=(r)t-hK{wy4s_(4P8*47fN#cVvhHy+cgxYjQ!nk=~ z>mrN&@QXR?H47}+-#!9x*7kT)#Pw1eKMY7{V?_psBrxN$x?cOEwVs;X`aHg=GA4r` z#ORG${=VME?;01m?U)`eo;#7pROB2EeG@FQ=X3}72~Hyi=LoZjA}?g^5b#tNR>Y{z z*yaJhow?kUSGmKzL3oUqpJR~khQfqasCk2$givb1I`iRt(e`-jabQQl5fg=8kb^1d zs9k0$?`)SpFrvdf3oVd8e^vbbh>PuwJSE)%b4KGJU+tZNxt)$I6m!D9XG;bGTSv}F zoF*OVx2=y`rhI(W5$Z)jga!aO3?9gqx1Wf~l|Na+o~5OKbF5*OpQOUGR=a%tOMV`r zcDUx|7Zzo)9caZKSDvF|5ICn0ApU^&wJ~!F&knb*I5-kPyO8XU>NnVoC~|&cz#zh0KJ16)?9M z5)&>taBiPMHy$o{Ujq53&CTYBOlCduPkO-PIUcN9yOBw+#74uW zbZb0biAT>rYxAH50WpU3Kmykxfhv%hKOqf8X9C4~OI(^MU1AsEY76;+L2QBX8`)Y) z>SL0&CSeLZZ2%GjR|#QgP;Pvs{ zmpMO>JKWnj=Ssx8qFH018&}(jT?Zr6d1GEh+X^HfOZ}eK=eUv0QZ(6Zz}yq9S*%zbF;Zd&1}B_B$G#Rv2>t1?a~hVCdc_Ra!R>|s&9N> zS`RJGs=f5mbxwSc0~)aUI4`y{a3%_pa`)>^ruxq>SE~9p3NT2sE2+>msExPm=Fe^l zgv%SI5kajbYfK z0SN~9t#2DBq>0iQyX(8ShxW1~20(a`6EX%3HQPs^blz(Om*&Wr_x1AH6}T1(@$yd0 zoj#8kD3cSz4Xj9Bnh-}GR1+;~P4Y+*A7Sf%W&a4cF{$XJ<^Uy-XYz<--O>jAGHB29 zT?^K}Hn5WtmYV#!>C;7{Km5Xjuk$WZ<%FbP51?UAqk=5@Rn^AGPj(4p1iGvp76vog z@`|_LksQ!%Wz{r{byi5H^>kRdB5N}B;IoHb>p|NtQL)Ed9eIe$o9;xMTNU$+)+l67 zJuw@9=7;?Z+$~-lup=S581Za0O|LRD=G@!!?Hb->f6kZA116G`c!DyF@$gW9z}V2G zMI+LQb`FYSQ+l!#y;QWmjy$Y-T=6V<;LrG**&reMM)9+TVJXKGRpHGi*GwU@+x7qw zjSjuYdtTk*Bj?3HjouNqK-+7%!G2WRI@T%(tKN=H!_Ld)Y)Uyypqt!H(81j^DTEIs z1J%jC+)}FJV#?4+hYC?RxosLxAftVREov z;4R>p#aL$mU zlX>J|7A)-PNG3*|ezfQx=y#`|3ijs?hJ`)g!I}7egqmD4{a{d#yV#tP^uR3(W**Q= zr6in$t-}yL<_&7XTGtiK34anFHxHhXIImvKt})D}Z;%t}-)OGFF&V6o4q~PsS5%ts zS`t!zudDAC-L5OKLED%G{#&?Ie1<&;B^D}my*#oBLhm}^H9_b0b51h`dc2;&l&xk{ z21q;BBIO2lFwB?;9U+G72jNDJ`Dp`iAziDWl-*|r${SMCoJ%>QCbW4PGa!HAeHyM#CPsQG+F>XNB>L;rj$U`^fy2-k0bj z^=mW7CT@>$;vKo}D-mWk0USvNWq~L75DvKPirFakhYjvJNlP(b11cs2Y_x5}j@i3Qd?cQvI&@oL_nfx*gf?L^JUIYY z4;+X?Mtr4iA3+-@;EaBG_!v81({2PZZtg0(*fceP_~vS_u1g|>4B8L{o_F8ZUI@Dm z{FS5KR+5~aq1@j1n6x;rSnAz+BeX*iw;Z}AZb5qttSW$Cvp@V5$n~S|j@Rbw=n@i; zumkD?I`pF;D@cRlx0vi~;deiDZgUU4W$-<44ABROHifA)$gaTp>$i5ci`QgKZG!gJ zK{&`x!=}9uk<2gKSHyRBRRbTw?HI>6<`9u5!SK)J7xlCmw}{j5n(6fnBE10 zN<|Rs_tEjjH^0{6ey;HMo-BPBL*24Vq05DssOa&yevO5Kzo%7e`)kg2q_n`9UUL#Z z4qQop;lSh}&UflUCe#Ihd%yPe8<2UH!wP`*py|TPy|N$;fT51)PJg%rzX{^u=TSdC zvj2D^`~raGbn73xw@sA8Y`fs!^9q=hcs z^?8qilPi6n*nD8CM9_Pifkqq3rYI>rtan~|aj7S?M9s4`uj9vPPbQ)LP0xG*Zskdb z_X!EqBX<)XiRhV`rD~{FjjEV{?yclH&3j{?h3Uv>ce4IjE?CHuF3;?_xihi*r&SL6 zbb;uzirl%*rrEfrESJyY;B^zlA{caXO$r5hMfe)OGUFo1dbV&hng^iHvVSBT1q`fr zSwrNn9QdSR>o}{64#>wxa&MU&T5~_2q_3~5{hjWO_mn9-HPyw%MK*}|*2%n2C4T?i zYz|zoY9A{GN`y4z!iTfsQpp_K;sVFKz`apk$ z4PHgzTTs;2=Iw#RP{UZIm`PiRx^$an$LRBpqC%EaSCI&ynNL@sVy?Gm2O)}u3jtji ztP^MlC@vy0J01BV`fmnHi=&g1blT_f7lUFqpE!a;>^=P`=eQnt_}<>w{WX`NrpKGd z+7v>}ugb!VG@+=7GvaN&&g(*OHD}c$3!h=vNIrR((j6=iHs=uv2zk?9{3+ygVi5|} z)&K;Sd7&j;^_K(y3F3!P@w04bwuuWkNmZWo;g8yS($1zLb?(GWZtO3~ ztZqr@BmJUOOWEYRpGA^bqvvQEy`{&a>MB`+Vl0S4@n$BnR;W^&K?BwGi&!2a<^%=p zuOLT6OG&N;{9V5i`h~y z+s<=;KcPdb%`D9Q8WWJ3k6^k=@%kqCPG8%9<0O?>ropZ%LtmYs`2D9jvBCH$!9KmY z`Oh%;gfRo;&->i}>SrK7_XvcXe=QF{XDH$fetypX{{!;2@{tpn|JxTTJ-5*KS``C@ z=^y{vkqCt4K>Dq)9T6D;4R+YEY6!6TTB6@LxQ2kVCDxj?&-w`{81{ZN_|N{n0x&mw zC9wWeo+D;J>Kl9n*Z#vp9(Cyg^@n@`0|SGFHhL>Fpdr5Y{xmBe56{EslW%UhQ5Mhw z&2IUtXLXa&F-(%c)IZSs>5zg-S5qs74&7&GZMfQ*E?=3$A*9U4yAzH;Q^J)0pV=1hzCwc%gTtnC0$=l$l{_WlA~c72 zh)@4aMvM01lQIj;fll{<_#aJTtAbIS%lVA&)GXj?=tZ-2UxUl}O_~HFdHC6P7%;-W zPI&DW==^m>Z))Dqf55;dXXtt4StU7XG|b%}IxuhPiA3{hjUh5>aT9opMnh)aP|JbY zSoyVC7|@@SVn^c3;9zhDfTKnc5lXJU{%yJIDEcfi{`oV1uY?VwL_3DgCB(|D=c940 zf{lf;9ct12+Ed~mN8Xqx5=sq)XcO=Ht%_yysB1;&oYjs894GRUke!@ zfPbyr@lIWQ-a&F^Qo5r-~1nT*!eF3_23MbjQKy#@yJLB&sdcNR#! z)O1wh;A*!(N8i#JI}%$>x8kl%Nw3%&9bhW_3&{NomurDO%O^)N$MWMh_M|1<9n@Bh zss-qhlXqC1eYFvE*{T$fSE0ihwiag==czlM)sIm{C4j042V6K7MW(oUcAsKntkyjQ?T9l5(IYO&KC? zgVu@z{TpvZfrb2(M-~|QF|v5H)(~wXeXGkU3Im|!`q#dZ8&ll83+(q_S1Z|Zo}>H! z+z&!BDjnk|Z7Cj{{MTH#9sidrvVWq$fqa+&k@BBK3CRH6G2&dGCUyeV{ej(dXKoc4;Xc)+dom5LPgapQ0{UB(wmVNb zQrEEq4_%G0k)D}A5=3G+R@Tk`6Inn62r>iF;nWha$>%Kte5vh=6J^@Ru4o5BrORghP#-ROunG!3O`f%#(uiQijLeNA(ZDXry=OwniQ{Dh(IqyWmg~b&kqxsAs>ivVT`nR`F$6r^^})> z5DwXJIAfL9nv-g8x#SdD=+7}J%1#i&w>d4 zW*RrFKH%1J8(v6>XL<1o@)6+dELF|7^f)`5?nhJHv-u`PW(f`vkAq^<)0_txKC@SN zQJ^gvQM#YBWaF_7KAng2xqmK_@!`D1jQKi4o2jeY-3^g5EG1Bx2oeNh=3h<3)a zYri0MhSmpTvIX+nt@AqKG;hQ+QHzVcceTVlpb4TdHfq0z)4IVW)1eBw@zetul#iS< zj#qH)^ziQo;C~{^!>NZn6nRX5AxFmome-u-)fRJf?67PYR0@zf z149?G$rshRk^hE9k0ADY(ZXL}g%fDCsUhT`4Q@(7vO;XRpu?jCw@%|5>Te^Rlq5TIc5 z)8_+bOR+^3p!?fV0xvE8fBg>>v`s2h?~71W|M{<>l0DK}VHXzdeC{HEb@`XC2xS^jo;&C`@ zGRVLser`x>wUWQA#uE(XSk^H;(F%%De%Cz3mFPDPy2)3qubY`m``*8o7vMZ^KhgqN zQuy>m2}Ikv{3HobyMs#&`6~JVv}jMbu&28sK&NFgjU5QTFBggT5r2ko6-FMS+&@Q3!G9Rx!V`br^O z6h(G>f7b+s8|zb(fv!f#rX&PAtPHdkNP1l<9)r7 zDfVb=kR?B|UmWk~{@hOVkB>?sh1mAX{Ry!cu`$~S{Wrd&@OWFtle4iJAW{cG!(;8= z$>+jarF(z9*fpT!{@T?f+%-FaJUO9R(3TDY`Wk@m*dJ69`Ii3V*@8RlAlJ%Y?INWS zsx(X~&;I||GFGkbpoiPUDr~&%5+#DuvlgAUPps(fcynFezh)Vic#lcpRdQ;Pi3%xy zfKB~e7eUvTuFk(!t<~9>v8gv})~jh{hn^&t&K9U#v@~tU`hXqrp*2=q;by?T68P*m z5^9-^H;Prx%PB?Lo-yOHPuvseYW#QGsuh`~t#b^1-k7j2>IbK5TGhik*Wy2q>|8os zb&Ns-L2KV81J6?gW*hsWngw+y{%-x^u}o_2tlC9IKY$Ie*IGYnft8^qyfPH)jd?6I zKk-mbvZkx;wU8r0m-|=Uw=WE;pD|_2Lbt;$kJF=;ZK?v^y%F;LvWdz*zhzpWO+l4K zc$WDFecfr#e8c{0=iIy7-@Ute%VOFsC2d5>8fIrSwaHzg&L&mvwC=B0n|p0VE~#DH zlB?X`)1$hyAky@3Ps+m6OWwyG`YVTLM(!b0a?lJll714g}045`;DKYIZ(I88LrwnxFF~4GDtZ{$RMzA1KmWVs6jGz9 z>pO7JnE@0kL#)<8s~S&*RIO)cVE73N(MRxu(LtjQkh3~L$D|J?-or;n|J&E@_dC=a T{@o3D6##>$tDnm{r-UW|!Dh^r literal 0 HcmV?d00001 diff --git a/tutorial-team-build/RC/media/tfs2015-5.png b/tutorial-team-build/RC/media/tfs2015-5.png new file mode 100644 index 0000000000000000000000000000000000000000..2392abd233da729279d961ad12b4fcf3eacb0059 GIT binary patch literal 21276 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 Rbl@vE@FrHqRfg{I{{*-7^UweQ literal 0 HcmV?d00001 diff --git a/tutorial-team-build/RC/media/tfs2015-7.png b/tutorial-team-build/RC/media/tfs2015-7.png new file mode 100644 index 0000000000000000000000000000000000000000..0f5a151be41da380bf1c74b8eaf8574e00012432 GIT binary patch literal 47759 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 literal 0 HcmV?d00001 diff --git a/tutorial-team-build/RC/media/tfs2015-8.png b/tutorial-team-build/RC/media/tfs2015-8.png new file mode 100644 index 0000000000000000000000000000000000000000..2eab3f3eda8ca3bd50c4e458368f617da77d3093 GIT binary patch literal 14072 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 ##What to Add to Source Control On the surface, this seems like all files in a given Cordova project should be added to source control. However, to avoid unexpected issues, we recommend excluding the following files and folders from source control. @@ -31,10 +48,11 @@ On the surface, this seems like all files in a given Cordova project should be a - *.suo - *.jsproj.user -**Troubleshooting Tip: Be aware that a bug in VS templates in VS 2015 RC included four json files that can cause issues if added to source control: plugins/android.json, plugins/windows.json, plugins/remote_ios.json, and plugins/wp8.json.** Adding these files to source control can result in a build that appears to succeed but is missing plugin native code. They should only be included if the "platforms" folder is also checked in which is not recommended. Simply remove these files from source control to resolve the issue. +**Troubleshooting Tip:** Adding plugins/android.json, plugins/ios.json, plugins/remote_ios.json, plugins/windows.json, or plugins/wp8.json adding these files to source control can result in a build that **appears to succeed but is missing plugin native code.** They should only be included if the "platforms" folder is also checked in which is not recommended. Simply remove these files from source control to resolve the issue. Note that you **can** add "plugins/fetch.json" to source control along with the rest of the contents of the plugins folder. See [our Issues, Tips, and Workarounds documentation](../tips-and-workarounds) for additional tips on addressing common build issues. + ##Basic Workflow Each build server technology is a bit different and in this article we will focus on the general steps required to build a Cordova app regardless of technology using the Cordova Command Line Interface. @@ -56,12 +74,20 @@ The basic flow for building a Cordova app is simple on the surface: The Cordova CLI is node.js based, so these exact same steps can be run from Windows or an OSX machine or from a cloud hosted VM like [MacInCloud](http://go.microsoft.com/fwlink/?LinkID=533746). See the [Cordova CLI documentation](http://go.microsoft.com/fwlink/?LinkID=533773) for additional details. -Exactly how these steps are executed will vary depending on your build server. However, there are a few challenges that may not be immediately obvious when setting up an automated build environment. This are article will describe some techniques for dealing with these common problems. +Exactly how these steps are executed will vary depending on your build server. However, there are a **number of challenges that may not be immediately obvious** when setting up an automated build environment. This are article will describe some techniques for dealing with these common problems. +###A Note on TypeScript +Unlike Visual Studio, it's important to note that the base Cordova CLI does not itself automatically compile TypeScript code. If you are using a build language like Gulp or Grunt, there are convenient plugins that you can use to compile your TypeScript code. Otherwise there is also a node.js based command line utility that works both on Windows and OSX. See the following links for additional details: + +- [Compiling TypeScript from the command line](http://go.microsoft.com/fwlink/?LinkID=533802) +- [gulp-typescript](http://go.microsoft.com/fwlink/?LinkID=533748) +- [grunt-typescript](http://go.microsoft.com/fwlink/?LinkID=533779) + + ##Installing Dependencies Cordova builds require that a number of dependencies be properly installed and configured on the system. However, exactly which dependencies are required varies based on the Cordova "platform" (Android, iOS, Windows 8.0/8.1 and Phone 8.1, Windows Phone 8.0) you want to build. -Installing Visual Studio 2015 with the Tools for Apache Cordova option will automatically install these dependencies but you will still need to configure some of the environment variables by hand for Android. See [Team Foundation Services 2015 and Visual Studio Online](http://go.microsoft.com/fwlink/?LinkID=533771) for a summary of these variables. +Installing Visual Studio 2015 with the Tools for Apache Cordova option will automatically install these dependencies but you will still need to configure some of the environment variables by hand for Android. See [Team Foundation Services 2015 and Visual Studio Online](./TFS2015.md) for a summary of these variables. Otherwise you can manually install only those dependencies that are needed for building the platforms you are interested in. @@ -91,7 +117,8 @@ Otherwise you can manually install only those dependencies that are needed for b 1. [Windows and Windows Phone 8.1+ Platfrom Guide](http://go.microsoft.com/fwlink/?LinkID=533777) 2. [Windows Phone 8.0 Platform Guide](http://go.microsoft.com/fwlink/?LinkID=533778) -###Internet Access & Proxy Setup + +##Internet Access & Proxy Setup If your build server is running in a datacenter, it may be very locked down and not have unrestricted access to the Internet. Due to dynamic acquistion requirements, you will need to allow the build servers to access the following domains: - npm: http://registry.npmjs.org @@ -116,17 +143,13 @@ You may also need to configure proxy settings for Java. This can be [accomplishe JAVA_OPTS=-Dhttps.proxyHost= -Dhttps.proxyPort= -Dhttp.proxyHost= -Dhttp.proxyPort= -DproxySet=true ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -###A Note on TypeScript -Unlike Visual Studio, it's important to note that the base Cordova CLI does not itself automatically compile TypeScript code. If you are using a build language like Gulp or Grunt, there are convenient plugins that you can use to compile your TypeScript code. Otherwise there is also a node.js based command line utility that works both on Windows and OSX. See the following links for additional details: - -- [Compiling TypeScript from the command line](http://go.microsoft.com/fwlink/?LinkID=533802) -- [gulp-typescript](http://go.microsoft.com/fwlink/?LinkID=533748) -- [grunt-typescript](http://go.microsoft.com/fwlink/?LinkID=533779) +Finally, if you see the error "**TypeError: Request path contains unescaped characters**" when building or installing a plugin you may need to downgrade [Node.js 0.10.29](http://nodejs.org/dist/v0.10.29/). See [tips and workarounds](../tips-and-workarounds/general/README.md#cordovaproxy) for additional details. + ##Cordova Challenges When building Cordova projects in a server environment, there are a number of challenges you may encounter. This tutorial will describe simple ways to handle these problems without going into specifics on particular CI servers so that this information can be adapted to your favorite build technology. -If you are looking for a quick solution you may want to read the [Gulp](http://go.microsoft.com/fwlink/?LinkID=533742) tutorial and [this Git repository](http://go.microsoft.com/fwlink/?LinkID=533736) with a sample taco-team-build node module designed to help resolve these problems regardless of build system. +If you are looking for a quick solution you may want to read the [Gulp](../tutorial-gulp/gulp-ci.md) tutorial and [this Git repository](http://go.microsoft.com/fwlink/?LinkID=533736) with a sample taco-team-build node module designed to help resolve these problems regardless of build system. The challenges are as follows: @@ -143,6 +166,7 @@ The challenges are as follows: 5. **OSX Gotchas.** If you spend most of your time developing in the Windows environment, there are a few common, easily resolved issues that can pop up when you start trying to build your project on OSX. + ###Building with Multiple Versions of the Cordova CLI The Cordova CLI is a standard Node.js npm package and thus can be installed either [globally or locally](http://go.microsoft.com/fwlink/?LinkID=533780). The trick, then, is to use a local installation of the Cordova CLI rather than a global one. There are two different methods that you can use to install Cordova locally: at the project level or in a global cache. @@ -243,8 +267,9 @@ To avoid re-installing each time, you can take advantage of Visual Studio's **ta 4. Use "./cordova.sh" (OSX) or "cordova.cmd" (Windows) to run additional Cordova commands -Note that this same script can be easily adapted to a [Gulp build task](http://go.microsoft.com/fwlink/?LinkID=533750). See the [Gulp](http://go.microsoft.com/fwlink/?LinkID=533742) tutorial for additional information. +Note that this same script can be easily adapted to a [Gulp build task](http://go.microsoft.com/fwlink/?LinkID=533750). See the [Gulp](../tutorial-gulp/gulp-ci.md) tutorial for additional information. + ###Adding Platforms Adding platforms in Cordova is quite simple using the "cordova platform" command. Ex: @@ -278,6 +303,7 @@ However, there are a couple of common problems when executing this command that if [ ! -d "platforms/android" ]; then cordova platform add android; fi; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ###Generating an iOS App Store Package In order to distribute your iOS application you will need to generate an "iOS App Store Package" or "ipa" file. These files can be imported into iTunes or enterprise app stores in addition to being distributed to the Apple App Store via the [Application Loader](http://go.microsoft.com/fwlink/?LinkID=533751). @@ -325,10 +351,11 @@ cordova build ios --device --release xcrun -v -sdk iphoneos PackageApplication "${WORKSPACE}/platforms/ios/build/device/My Cordova App.app" -o "${WORKSPACE}/platforms/ios/build/device/My Cordova App.ipa" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ###Visual Studio Specific Features A quick way to get you project working with Visual Studio specific features outside of Cordova is to add the sample [Visual Studio Tools for Apache Cordova CLI Support Plugin](http://go.microsoft.com/fwlink/?LinkID=533753) to your project. It adds in support for three things: -1. To support the Task Explorer, the plugin takes advantage of the technique illustrated in the [Gulp tutorial](http://go.microsoft.com/fwlink/?LinkID=533742) for wiring in Gulp tasks to Cordova build events. +1. To support the Task Explorer, the plugin takes advantage of the technique illustrated in the [Gulp tutorial](../tutorial-gulp/gulp-ci.md) for wiring in Gulp tasks to Cordova build events. 2. To support res/native, the plugin uses a similar approach and we will briefly cover how this works behind the scenes. 3. The plugin also adds in support for the VS specific Windows packaging elements in config.xml. @@ -371,6 +398,7 @@ function copyFiles(srcPath, destPath) { You can place this into a "hooks\before_prepare" folder Visual Studio Cordova project and check it into source control and it will automatically be used. + ### OSX Gotchas: Troubleshooting Tips for Building on OSX There are a few relativley common issues when building a Cordova app on OSX related to permissions that are worth noting. @@ -421,6 +449,6 @@ There are a few relativley common issues when building a Cordova app on OSX rela * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-team-build/TFS2013.md b/tutorial-team-build/TFS2013.md index 5ca520d1..1a953008 100644 --- a/tutorial-team-build/TFS2013.md +++ b/tutorial-team-build/TFS2013.md @@ -1,27 +1,28 @@ -#Using Tools for Apache Cordova with Team Foundation Services 2013 -**This tutorial is part of a [series of tutorials](http://go.microsoft.com/fwlink/?LinkID=533743) on building Visual Studio 2015 Tools for Apache Cordova projects in a Team / CI environment and does not apply to Visual Studio 2013 CTPs.** +#Using Tools for Apache Cordova (RTM) with Team Foundation Services 2013 +**This article is intended for use with Visual Studio 2015 RTM or later. See [this alternate tutorial](./RC/TFS2013.md) for details on using Visual Studio 2015 RC.** -Tools for Apache Cordova is designed to work with a number of different team build systems since the projects it creates are standard [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. However, you may want to use Team Foundation Services 2013 build agents. +The article is part of a [series of tutorials](./README.md) on building Visual Studio 2015 Tools for Apache Cordova projects in a Team / CI environment. -It is important to note that as a general recommendation, we encourage the use of [TFS 2015's next generation cross-platform build system](http://go.microsoft.com/fwlink/?LinkID=533772) and [Gulp](http://go.microsoft.com/fwlink/?LinkID=533742) based build capabilities rather than TFS 2013 or MSBuild since this provides the ability build directly from TFS on Windows or OSX. See the [TFS 2015 tutorial](http://go.microsoft.com/fwlink/?LinkID=533771) for details. Visual Studio Online's support for building Cordova apps will focus on the Gulp based TFS 2015 approach rather than MSBuild. +##Background +Tools for Apache Cordova is designed to work with a number of different team build systems since the projects it creates are standard [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. However, you have an existing Team Foundation Services 2013 installation and would like to use existing configured build agents. + +It is important to note that as a general recommendation, we encourage the use of [TFS 2015's next generation cross-platform build system](./TFS2015.md) and [Gulp](../tutorial-gulp) based build capabilities rather than TFS 2013 or MSBuild since this provides the ability build directly from TFS on Windows or OSX. See the [TFS 2015 tutorial](http://go.microsoft.com/fwlink/?LinkID=533771) for details. Visual Studio Online's support for building Cordova apps will focus on the Gulp based TFS 2015 approach rather than MSBuild. This tutorial will describe how to configure TFS to build a Tools for Apache Cordova project using MSBuild and the steps provided here will generally apply to using MSBuild with TFS 2015 as well. -**Troubleshooting Tip: Be aware that a bug in VS templates in VS 2015 RC included four json files that can cause issues if added to source control: plugins/android.json, plugins/remote_ios.json, plugins/windows.json, and plugins/wp8.json.** Adding these files to source control can result in a build that appears to succeed but is missing plugin native code. They should only be included if the "platforms" folder is also checked in which is not recommended. Simply remove these files from source control to resolve the issue. +**Troubleshooting Tip:** Be aware that we recommend against adding the "platforms" folder or the following json files in the "plugins" folder into source control: android.json, ios.json, remote_ios.json, windows.json, and wp8.json. See "What to Add to Source Control" in the [general team build tutorial](./README.md) for additional details. ##Initial Setup -Before getting started with setting up your TFS Build Agent, you should install Visual Studio 2015 with the Tools for Apache Cordova option. You will also want to select the Windows / Windows Phone 8.1 tools and the Windows Phone 8.0 tools if you want to build for any of these platforms. From there you will want to configure a build agent on the server you have installed Visual Studio 2015. +Before getting started with setting up your TFS Build Agent, you should install Visual Studio 2015 with the Tools for Apache Cordova option. You will also want to select the Windows / Windows Phone 8.1 tools and the Windows Phone 8.0 tools if you want to build for any of these platforms. From there you will want to configure a TFS build agent on the server you have installed Visual Studio 2015. - See [Tools for Apache Cordova documentation](http://go.microsoft.com/fwlink/?LinkID=533794) for setup details on Visual Studio 2015. - See [Team Foundation 2013 Build documentation](http://go.microsoft.com/fwlink/?LinkID=533786) for setup details on Team Foundation Services 2013. -Note that you may also use a stand-alone build agent integrated with Visual Studio Online. - -**Troubleshooting Tip:** See ["Internet Access & Proxy Setup" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) if your build servers have limited Internet connectivity or require routing traffic through a proxy. +**Troubleshooting Tip:** See ["Internet Access & Proxy Setup" in the general CI tutorial](./README.md) if your build servers have limited Internet connectivity or require routing traffic through a proxy. ##Common Build Definition Parameters & Environment Variables ###Updated Build Process Template -Before you get started, it's important to note that you will need to use v14 of MSBuild when building a Tools for Apache Cordova project. Build definition templates that ship with TFS 2013 support v11 and v12. As a result, you will need to create a modified TFS Build Process Template for TFS to use MSBuild v14.0. To do this, you can simply download the v12 template (or your own custom one) and append ToolVersion="14.0" to the end of the **RunMSBuild** element and upload it as a new template. Ex: +Before you get started, it's important to note that you will need to use v14 of MSBuild when building a Tools for Apache Cordova project. Build definition templates that ship with TFS 2013 support v11 and v12. As a result, you will need to create a modified TFS Build Process Template for TFS to use MSBuild v14.0. To do this, you can simply download the TfvcTemplate.12.xaml MSBuild v12 template (or your own custom one) and append ToolVersion="14.0" to the end of the **RunMSBuild** element and upload it as a new template. Ex: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -56,14 +57,14 @@ Now, create a build definition if you have not done so already and add the Power ##Common Environment Variables There are a set of environment variables that need to be made available to MSBuild. These can either be setup on your machine as system environment variables or using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). -**Troubleshooting Tip:** Use full, absolute paths and be sure to remove any leading or trailing spaces in the your variable paths! Also note that whenever you set a system environment variable you will need to restart the build service to get it to pick up the change. +**Troubleshooting Tip:** Use full, absolute paths and be sure to remove any leading or trailing spaces in your variable paths! Also note that whenever you set a system environment variable you will need to restart the build service to get it to pick up the change. | **Variable** | **Required For** | **Purpose** | **Default Location (Visual Studio 2015)** | |:------------------|:-----------------------------------|:-----------------------------------------|:---------------------------------------------------| | **MDAVSIXDIR** | Any operation | Location of the Tools for Apache Cordova VSIX. With Visual Studio 2015, its location is always the same. In VS 2013, you will need to search for the VSIX by finding a folder containing the "vs-mda-targets" folder. | C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\Common7\\IDE\\Extensions\\ApacheCordovaTools | | **NODEJSDIR** | Any operation | Location of Node.js | C:\\Program Files (x86)\\nodejs | | **NPMINSTALLDIR** | Any operation | Location to install npm packages when building. | C:\\Users\your-user-here\\AppData\Roaming\\npm | -| **LANGNAME** | Any operation | Language used for messaging from node scripts. | en-us | +| **LANGNAME** | Any operation | Language used for VS generated Cordova build messages. | en-us | | **BUILDVERBOSITY**| Any operation | Logging level for the Node.js portion of the build.
Set using the /p MSBuild argument in your build definition (Process =\> Advanced =\> MSBuild Arguments). | Normal | | **GIT\_HOME** | Optional: Plugins Acquired via Git | Location of the Git Command Line Tools | C:\\Program Files (x86)\\git | | **GRADLE\_USER\_HOME** | Optional | Overrides the default location Gradle build system dependencies should be installed when building Android using Cordova 5.0.0+ | If not specified, uses %HOME%\\.gradle | @@ -74,13 +75,13 @@ If you have not already, create a build definition for your project. Note that c ###Android Environment Variables -In addition to the common environment variables mentioned above, the following variable can either be set as system environment variables or semi-colon delimited using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). +In addition to the common environment variables mentioned above, the following variables can either be set as system environment variables or semi-colon delimited using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). **Note that whenever you set a system environment variable you will need to restart the build service to get it to pick up the change.** | **Variable** | **Required For** | **Purpose** | **Default Location (Visual Studio 2015)** | |:------------------|:-----------------|:----------------------------|:------------------------------------------| -| **ANT\_HOME** | Android | Location of Ant | C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | +| **ANT\_HOME** | Android in Cordova < 5.0.0 | Location of Ant | C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | | **ANDROID\_HOME** | Android | Location of the Android SDK | C:\\Program Files (x86)\\Android\\android-sdk | | **JAVA\_HOME** | Android | Location of Java | C:\\Program Files (x86)\\Java\\jdk1.7.0\_55 | @@ -94,19 +95,26 @@ In addition to your other build definition settings, you will want to use the fo | **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: emulator, ripple, or device. | **/p:DebuggerFlavor=AndroidDevice** |   ##Building iOS -If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. In addition you will need to have a remote build agent configured on an OSX machine. See [Tools for Apache Cordova documentation](http://go.microsoft.com/fwlink/?LinkID=533745) for details. +Building for iOS with TFS 2013 requires that a TFS agent running on Windows be configured to communicate with a Visual Studio remote build agent running on OSX. See [the remote agent section](http://go.microsoft.com/fwlink/?LinkID=533745) of the Tools for Apache Cordova installation documentation for details on setting up the remote agent on OSX. + +**Note that Visual Studio 2015 RTM uses a different remote agent package (remoteagent)** than the vs-mda-remote agent used in VS 2015 RC and below. + +If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. **Troubleshooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. ###iOS Environment Variables and Cert Setup -In addition to the common environment variables mentioned above, the following variable can either be set as system environment variables or semi-colon delimited using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). +In addition to the common environment variables mentioned above, the following variables can either be set as system environment variables or semi-colon delimited using the "/p" option in your build definition (Process =\> Advanced =\> MSBuild Arguments). -Using an environment variable is most useful when you want a single build definition to be able to be used with different remote build agents originating from different TFS build agents and thus do not want to have the agent URI in the build definition itself. +For iOS, using a system environment variable is most useful when you want a single iOS build definition to built on a number of separate Windows TFS based build agents with a set of different OSX remote build agents instances in your build farm. -| **Variable** | **Required For** | **Purpose** | **Example** | +|**Variable** | **Required For** | **Purpose** | **Example** | |:-------------------------|:-----------------|:-----------------------------------------|:-----------------------------------------| -| **iOSRemoteBuildServer** | iOS | Host and port for iOS remote agent. | https://chux-mini.local:3000 | | **iOSRemoteSecureBuild** | iOS | Indicates whether a secure connection should be used to connect to the agent | true | +| **iOSRemoteBuildServer** | iOS | URI of the iOS remote agent. Form:
http(s)://<host>:<port>/cordova
Use "https" in secure mode. | https://chux-mini.local:3000/cordova | +| **iOSCertificateName** | iOS | Name of the SSL certificate for secure mode. Form:
remotebuild.<host> | remotebuild.chux-mini.local | + +###Importing the Secure Connection SSL Certificate By far the easiest way to import the client SSL certificate used for secure remote build is to simply start up Visual Studio and configure the remote agent there. This will import the client SSL cert into your local certificate store so it can be used during build. See [Tools for Apache Cordova documentation](http://go.microsoft.com/fwlink/?LinkID=533745) for details. @@ -114,23 +122,26 @@ By far the easiest way to import the client SSL certificate used for secure remo ![Build Service with User]() -#### Manual Import of SSL Cert +#### (Optional) Manual Import of SSL Cert However, it is also possible to manually import the SSL cert by following these steps: 1. Generate a security PIN. This automatically occurs the first time you start up the remote build agent but you can also generate a new one using the following command: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - vs-mda-remote generateClientCert + remoteagent generateClientCert ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -2. Get the generated .p12 file from the agent using the following URI in a browser using the host, port, and PIN from the agent output. **Be sure you start vs-mda-remote if it is not running before accessing this URI.** +2. Get the generated .p12 file from the agent using the following URI in a browser using substituting host, port, and PIN from the agent output. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ https://:/certs/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -3. Ignore the SSL security warning -4. Download the .p12 file and save it. **Note: For security reasons, this PIN will be automatically invalidated after you download the file.** You may, however, use the cert file on multiple machines if needed. + Be sure you start the remote agent if it is not running before accessing this URI. + -6. You now simply open the p12 file from the file system to import the cert using the Certificate Import Wizard that appears. +3. Ignore the SSL security warning that may appear and download the .p12 file and save it. **Note: For security reasons, this PIN will be automatically invalidated after you download the file.** You may, however, use the cert file on multiple machines if needed. + +6. You now simply open the p12 file from the file system to import the cert using into your user's certificate store by accepting all the defaults in the Certificate Import Wizard that appears. ###iOS Build Definition Settings @@ -144,7 +155,7 @@ In addition to your other build definition settings, you will want to use the fo ##Building Windows / Windows Phone 8.1 If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. -###Windows 8.1 Build Definition Settings +###Windows 8.1 / 10 Build Definition Settings In addition to your other build definition settings, you will want to use the following build parameter values. | **Parameter** | **Purpose** | **Value** | @@ -158,7 +169,7 @@ In addition to your other build definition settings, you will want to use the fo | **Parameter** | **Purpose** | **Value** | |:-----------------------------------------|:-----------------------------------------|:-----------------------------------------| | **Process =\> Items To Build =\> Configurations to Build** | Platform to build | **Configuration: Debug or Release**
**Platform: Windows Phone (Universal)** | -| **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: emulator or device. | **/p:DebuggerFlavor=PhoneDevice** | +| **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: emulator or device. | **/p:DebuggerFlavor=AppHostLocalDebugger** | ##Building Windows Phone 8.0 If you have not already, create a build definition for your project. Note that currently you'll will need a separate build definition for each device platform you intend to target. @@ -177,6 +188,6 @@ In addition to your other build definition settings, you will want to use the fo * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) -* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file +* [Email us your questions](mailto:/vscordovatools@microsoft.com) diff --git a/tutorial-team-build/TFS2015.md b/tutorial-team-build/TFS2015.md index 733c2ce8..b41eee81 100644 --- a/tutorial-team-build/TFS2015.md +++ b/tutorial-team-build/TFS2015.md @@ -1,64 +1,63 @@ -#Using Tools for Apache Cordova with Visual Studio Online and Team Foundation Services 2015 (RC) -**This tutorial is part of a [series of tutorials](http://go.microsoft.com/fwlink/?LinkID=533743) on building Visual Studio 2015 Tools for Apache Cordova projects in a Team / CI environment and does not apply to Visual Studio 2013 CTPs.** +#Using Tools for Apache Cordova with Visual Studio Online and Team Foundation Services 2015 (RTM) +**This article is intended for use with TFS 2015 RTM and Visual Studio Online. See [this alternate tutorial](./RC/TFS2015.md) for details on using TFS 2015 RC.** -Tools for Apache Cordova is designed to work with a number of different team build systems since the projects it creates are standard [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. Team Foundation Services 2015 provides a new [cross-platform agent](http://go.microsoft.com/fwlink/?LinkID=533789) and [Gulp](http://go.microsoft.com/fwlink/?LinkID=533742lp) based build capabilities that enables TFS to build directly on Windows or OSX which is a critical capability Cordova based development. In addition, Gulp also enables you to easily add in a large number of "[plugins](http://go.microsoft.com/fwlink/?LinkID=533790)" to perform useful build tasks in environments that you do not control directly like Visual Studio Online. +The article is part of a is part of a [series of tutorials](./README.md) on building Visual Studio 2015 Tools for Apache Cordova projects in a Team / CI environment. -For these reasons, this tutorial will focus on the use of the cross-platform agent and Gulp rather than MSBuild as the primary build language for Cordova apps. If you still need to use the legacy XAML / MSBuild based approach, see the [TFS 2013](http://go.microsoft.com/fwlink/?LinkID=533770) tutorial for details on setup. The instructions generally still apply to TFS 2015. +##Background +Tools for Apache Cordova is designed to work with a number of different team build systems since the projects it creates are standard [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. Team Foundation Services 2015 provides a new [cross-platform agent](http://go.microsoft.com/fwlink/?LinkID=533789) and [Gulp](../tutorial-gulp) based build capabilities that enables TFS to build directly on Windows or OSX which is a critical capability Cordova based development. In addition, Gulp also enables you to easily add in a large number of "[plugins](http://go.microsoft.com/fwlink/?LinkID=533790)" to perform useful build tasks in environments that you do not control directly like Visual Studio Online. -**Troubleshooting Tip: Be aware that a bug in VS templates in VS 2015 RC included four json files that can cause issues if added to source control: plugins/android.json, plugins/remote_ios.json, plugins/windows.json, and plugins/wp8.json.** Adding these files to source control can result in a build that appears to succeed but is missing plugin native code. They should only be included if the "platforms" folder is also checked in which is not recommended. Simply remove these files from source control to resolve the issue. +For these reasons, this tutorial will focus on the use of the cross-platform agent and Gulp rather than MSBuild as the primary build language for Cordova apps. If you still need to use the legacy XAML / MSBuild based approach, see the [TFS 2013](./TFS2013.md) tutorial for details on setup. The instructions generally still apply to TFS 2015. + +**Troubleshooting Tip:** Be aware that we recommend against adding the "platforms" folder or the following json files in the "plugins" folder into source control: android.json, ios.json, remote_ios.json, windows.json, and wp8.json. See "What to Add to Source Control" in the [general team build tutorial](./README.md) for additional details. ##Initial Setup Since the build process we will describe here is not directly dependent on MSBuild or Visual Studio for Android, you have two options for installing pre-requisites on Windows: 1. Install Visual Studio 2015 and select the Tools for Apache Cordova option and let it install the pre-requisites for you -2. Manually install only the pre-requisites needed for the specific platforms you intend to build. For example, you do not need to install Visual Studio at all if you only intend to target Android. See "Installing Dependencies" in the [Building Cordova Apps in a Team / Continuous Integration Environment](http://go.microsoft.com/fwlink/?LinkID=533743) tutorial for details. +2. Manually install only the pre-requisites needed for the specific platforms you intend to build. For example, you do not need to install Visual Studio at all if you only intend to target Android. See "Installing Dependencies" in the [Building Cordova Apps in a Team / Continuous Integration Environment](./README.md) tutorial for details. -Next you will need to install the Windows build agent to build Android, Windows, or Windows Phone, and the [cross-platform build agent](http://go.microsoft.com/fwlink/?LinkID=533789) on an OSX machine if you intend to build iOS. See [TFS 2015 documentation](http://go.microsoft.com/fwlink/?LinkID=533772) for detailed instructions on configuring the agent for use with an on premise TFS 2015 instance or Visual Studio Online. +3. Next you will need to install the Windows build agent to build Android, Windows, or Windows Phone, and the [VSO cross-platform build agent](http://go.microsoft.com/fwlink/?LinkID=533789) on an OSX machine if you intend to build iOS. See [TFS 2015 documentation](http://go.microsoft.com/fwlink/?LinkID=533772) for detailed instructions on configuring the agent for use with an on premise TFS 2015 instance or Visual Studio Online. -**Troubleshooting Tip:** See ["Internet Access & Proxy Setup" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) if your build servers have limited Internet connectivity or require routing traffic through a proxy. +**Troubleshooting Tip:** See ["Internet Access & Proxy Setup" in the general CI tutorial](./README.md) if your build servers have limited Internet connectivity or require routing traffic through a proxy. ###Visual Studio Online -As of this writing, you can build Cordova apps targeting Android, Windows, and Windows Phone using the Hosted Agent Pool in Visual Studio Online. This allows you to build without setting up a Windows build agent on premise. iOS builds are not yet available. - -When using the Hosted Agent Pool in Visual Studio Online (VSO), all pre-requisites will already be installed and Node.js will be in your path. However, Apache Ant, required for building Android with Cordova 4.3.0 and below, will not be in your path. Fortunately you can resolve this issue in a few simple steps. We will cover these details step-by-step later in this tutorial. +As of this writing, you can build Cordova apps targeting Android, Windows, and Windows Phone using the Hosted Agent Pool in Visual Studio Online. This allows you to build without setting up a Windows build agent on premise. iOS builds are not yet available. When using the Hosted Agent Pool in Visual Studio Online (VSO), all pre-requisites will already be installed and Node.js will be in your path. -###Meet the Cross-Platform Build Agent +####Meet the VSO Cross-Platform Build Agent Since it is a new capability, let's pause and briefly highlight the new TFS [cross-platform build agent](http://go.microsoft.com/fwlink/?LinkID=533789) we will be using in this tutorial for building iOS on OSX since setup is different than traditional TFS build agents. The agent is a Node.js based service that uses a HTTPS connection to your TFS 2015 server to fetch work. As a result, your OSX machine only needs to have HTTP access to your TFS instance but not the other way around. This makes setup and configuration quite simple. The agent is for use with TFS 2015 and Visual Studio Online's [next generation build system](http://go.microsoft.com/fwlink/?LinkID=533772), not the legacy XAML/MSBuild based system. The pre-requisites in this case are simple: Your OSX machine needs to have Node.js and Xcode installed. Simply open the OSX Terminal app and follow the [setup instructions](http://go.microsoft.com/fwlink/?LinkID=533789). The agent will automatically register itself with TFS when you start up the agent for the first time. Because of its design, you can also easily use an **on-premise OSX machine with Visual Studio Online.** The OSX machine simply needs to have HTTP access to your VSO domain URI. You do not need a VPN connection and VSO does not need access to the OSX machine. Simply enter the your VSO project's domain URI when prompted during agent setup (Ex: "https://myvsodomain.visualstudio.com"). All other setup instructions apply directly. -##Environment Variables -You should set the following environment variables if they have not already been configured. Note that you can also set these in the "Variables" section of your build definition if you would prefer. +###Environment Variables +You should set the following environment variables if they have not already been configured on each server you have configured a build agent. Note that you can also set these in the "Variables" section of your build definition if you would prefer. | **Variable** | **Required For** | **Purpose** | **Default Location (Visual Studio 2015)** | |:-------------------|:-----------------------------------------|:-----------------------------------------|:------------------------------------------| -| **ANDROID\_HOME** | Android | Location of the Android SDK | %PROGRAMFILES(x86)%\\Android\\android-sdk | -|**JAVA\_HOME** | Android | Location of Java | %PROGRAMFILES(x86)%\\Java\\jdk1.7.0\_55 | -| **ANT\_HOME** | Android when building using Ant (not Gradle) | Location of Ant | %PROGRAMFILES(x86)%\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | +| **ANDROID\_HOME** | Android | Location of the Android SDK | C:\\Program Files (x86)\\Android\\android-sdk | +|**JAVA\_HOME** | Android | Location of Java | C:\\Program Files (x86)\\Java\\jdk1.7.0\_55 | +| **ANT\_HOME** | Android when building using Ant (not Gradle) | Location of Ant | C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\Apps\\apache-ant-1.9.3 | | **GRADLE\_USER\_HOME** | Optional | Overrides the default location Gradle build system dependencies should be installed when building Android using Cordova 5.0.0+ | If not specified, uses %HOME%\\.gradle on Windows or ~/.gradle on OSX | | **CORDOVA\_CACHE** | Optional | Overrides the default location used by the [sample build module](http://go.microsoft.com/fwlink/?LinkID=533736) to cache installs of multiple versions of Cordova. | If not specified, uses %APPDATA%\\cordova-cache on Windows and ~/.cordova-cache on OSX | -Note that you can opt to pre-populate the GRADLE_USER_HOME and CORDOVA_CACHE locations with the versions of Cordova and its dependencies you want to use by updating the [prep-cache PowerShell script](https://github.com/Chuxel/taco-team-build/tree/master/samples/prep-cache) in the samples directory of the sample build module GitHub repo. - -###Setting Your Path +####Setting Your Path The following will also need to be in your path: - **Node.js** should already be in your path on OSX simply by the fact that you've setup the cross-platform build agent, but if it is not in your path on Windows you will want to be sure it is configured for use. The default location of Node.js on Windows is **%PROGRAMFILES(x86)%\nodejs**. - **%ANT_HOME%\bin** should be added to your path if you are using a version of Cordova < 5.0.0 or have specified the "--ant" build option -When using the Hosted Agent Pool in Visual Studio Online (VSO), all other pre-requisites will already be installed and these environment variables will be set. Node.js will be in your path but Apache Ant, required for building Android with Cordova 4.3.0 and below, will not be in your path. Fortunately you can resolve this issue in a few simple steps. We will cover these details in the "Build Definition for Windows" section below. +When using the Hosted Agent Pool in Visual Studio Online (VSO), all pre-requisites will already be installed and these environment variables will be set. ##Project Setup & Build Definitions ###Adding Gulp to Your Project -Using Gulp in a team environment is fairly straight forward as you can see in the detailed [Gulp tutorial](http://go.microsoft.com/fwlink/?LinkID=533742). However, to streamline setup, follow these steps: +Using Gulp in a team environment is fairly straight forward as you can see in the detailed [Gulp tutorial](../tutorial-gulp/gulp-ci.md). However, to streamline setup, follow these steps: 1. Take the sample "gulpfile.js" and "package.json" file from the "samples/gulp" folder [from this GitHub repo](http://go.microsoft.com/fwlink/?LinkID=533736) and place them in the root of your project 2. Check these two files into source control with your project -From here you can modify gulpfile.js and add other gulp plugins. The [Gulp tutorial](http://go.microsoft.com/fwlink/?LinkID=533742) provides additional detail on what the gulpfile does and how to wire Gulp tasks as "hooks" into Cordova build events. +From here you can modify gulpfile.js and add other gulp plugins. The [Gulp tutorial](../tutorial-gulp/gulp-ci.md) provides additional detail on what the gulpfile does and how to wire Gulp tasks as "hooks" into Cordova build events. ###Creating Your Build Definitions We'll assume for the purposes of this tutorial that we want to build our Cordova app for Android, iOS, and Windows. The Windows Cordova platform can only be built on Windows and iOS can only be built on OSX. As a result, we'll need the ability to be able to queue a build that can target one of these two operating systems. @@ -72,8 +71,6 @@ There are two ways that this can be accomplished: For the sake of this tutorial, we'll cover option 2. The sample "gulpfile.js" assumes you want to build Android, Windows, and Windows Phone on Windows and iOS on OSX. Technically you could also opt to have Android built on OSX but we will not cover that in detail in this tutorial. #### Build Definition for Windows -**Note:** *For this tutorial we have opted to use the "Command Line" build task since as of this writing the "Npm install" and "Gulp" build tasks were not available from the Windows agent. You can opt to use these build tasks instead and this tutorial will be updated as these features come on-line.* - Detailed instructions on creating build definitions in TFS 2015 can be found in [its documentation](http://go.microsoft.com/fwlink/?LinkID=533772), but here are the specific settings you will need to use to configure a build. 1. Depending on the version of TFS 2015 you are using, you may need to click on the **BUILD.PREVIEW** menu option to access the next generation TFS build system. @@ -83,35 +80,26 @@ Detailed instructions on creating build definitions in TFS 2015 can be found in 2. Create a new build definition and select "Empty" as the template. We'll start out targeting platforms that can be built on Windows so give the build definition a name that indicates that this is the case. 3. Now we will configure the build definition to install any Gulp or npm package dependencies your build may have. - 1. Under the "Build" tab, add a new build step and select **Command Line** from the **Utility** category + 1. Under the "Build" tab, add a new build step and select **npm install** from the **Package** category 2. Use the following settings: - - **Tool:** cmd - - **Arguments:** /c npm install - **Advanced =\> Working Directory**: Location of the Cordova project itself inside your solution (not the solution root). - - **Advanced =\> Fail on Standard Error**: Unchecked. ![Windows Build Definition - npm]() - We need to use cmd.exe here due as npm is a batch file rather than an executable and thus is not found by the Command Line build task. This will be resolved in future updates. - 4. Next we'll configure Gulp itself. - 1. Under the "Build" tab, add a new build step and select **Command Line** from the **Utility** category. + 1. Under the "Build" tab, add a new build step and select **Gulp** from the **Build** category. 2. Use the following settings: - - **Tool:** node - - **Arguments:** node_modules/gulp/bin/gulp.js + - **Gulp File Path**: Location gulpfile.js in your Cordova project (not the solution root). - **Advanced =\> Working Directory**: Location of the Cordova project itself inside your solution (not the solution root). - - **Advanced =\> Fail on Standard Error**: Unchecked. ![Windows Build Definition - gulp]() -5. Next we need to ensure that this particular build runs on Windows rather than OSX. Under the "General" tab, verify a demand that "Cmd" exists is present. If not, add one. +5. Next we need to ensure that this particular build runs on Windows rather than OSX. Under the "General" tab, add a demand that "Cmd" exists. ![Windows Build Definition - Demand]() -6. As an optional step, you can configure your build to upload the resulting build artifacts to your TFS or VSO instance for easy access. The sample gulpfile.js script places the resulting output in the "bin" folder to make configuration simple. **TFS 2015 RC on-premise installs vary here slightly.** - - For **Visual Studio Online and post-RC TFS 2015** releases: +6. As an optional step, you can configure your build to upload the resulting build artifacts to your TFS or VSO instance for easy access. The sample gulpfile.js script places the resulting output in the "bin" folder to make configuration simple. 1. Under the "Build" tab, add a new build step and select **Publish Artifact** from the **Build** category. 2. Use the following settings: @@ -122,63 +110,22 @@ Detailed instructions on creating build definitions in TFS 2015 can be found in ![Windows Build Definition - Drop location]() - For **TFS 2015 RC** on-premise installs, go to the "Options" tab and enter the following information: - - **Copy to Staging Folder:** Checked - - **Copy to Staging Folder =\> Search Pattern:** \*/bin - - **Create Build Drop:** Checked - - **Create Build Drop =\> Drop location:** Server - - Finally, click the "Queue build..." button to validate your setup. You'll see a real-time console view of your build progressing so you can quickly fine tune your definition. That's it for Windows! You're now able to build using the Android, Windows, and Windows Phone 8 (WP8) Cordova platforms. -####Using the Hosted Agent Pool in Visual Studio Online -As of this writing, you can build Cordova apps targeting Android, Windows, and Windows Phone using the Hosted Agent Pool in Visual Studio Online. This allows you to build without setting up a Windows build agent on-premise. iOS builds are not yet available. - -When using Hosted build agents in Visual Studio Online (VSO), Node.js will already be in your path but Ant will not. Fortunately you can resolve this issue in a few simple steps as all of the other required environment variables will be set for you. - -1. Create a batch file called "setenv.cmd" and place it in a solution folder with the following contents: - - ~~~~~~~~~~~~~~~~~~~~~~~~~~ - @SET PATH=%PATH%;%ANT_HOME%\bin - ~~~~~~~~~~~~~~~~~~~~~~~~~~ - -2. Check this into source control with the rest of your project. - - ![setenv.cmd in solution]() - -3. Next, under the "Build" tab in your Windows Build Definition, add a new build step, select **Batch Script** from the **Utility** category, and enter the following settings: - - - **Path:** setenv.cmd - - **Modify Environment:** Checked. - -4. Make this the first build step in your build definition. - - ![Windows Build Definition - setenv.cmd]() - -You are now ready to go in VSO! - #### Build Definition for OSX Now let's create a version of this same build definition to target iOS that will run on a configured cross-platform agent on OSX. 1. Right click on the Windows build definition and select "Clone." Once you save you should give this definition a name that indicates it's the OSX build. -2. Next we need to update our call to "npm install" to be OSX friendly. - 1. Select the existing "Run cmd" Command Line build step - 2. Update the following settings: - - **Tool:** npm - - **Arguments:** install - - ![OSX Build Definition - Update npm install]() - -3. Now we need to add a demand that will route builds to OSX machines rather than Windows. Under the "General" tab, remove the "Cmd" demand if present and add a demand that "xcode" exists. +2. Now we need to add a demand that will route builds to OSX machines rather than Windows. Under the "General" tab, remove the "Cmd" demand and add a demand that "xcode" exists. ![OSX Build Definition - Demand]() You are now all set! You can configure either of these build definitions further as you see fit including having them automatically fire off on check-in or adding other validations. -**Troubleshooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. +**Troubleshooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](./README.md) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. ## More Information * [Learn about other Team Build / CI options](README.md) @@ -186,6 +133,6 @@ You are now all set! You can configure either of these build definitions further * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) -* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file +* [Email us your questions](mailto:/vscordovatools@microsoft.com) diff --git a/tutorial-team-build/media/tfs2015-1.png b/tutorial-team-build/media/tfs2015-1.png index 0fcecf004dba933e6676051ef7ed4aeaf6be1a63..e603d894876b6b6920a02e55bb60befd0f0d8ff4 100644 GIT binary patch literal 36114 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 diff --git a/tutorial-team-build/media/tfs2015-2.png b/tutorial-team-build/media/tfs2015-2.png index dfcfe5ccabc3746d9a75bb30046fc205e426793d..ef8d209d8d1245ff7e60abce0e8921efa88af118 100644 GIT binary patch literal 34019 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 K)XY=2efUppL%ibv diff --git a/tutorial-team-build/media/tfs2015-3.png b/tutorial-team-build/media/tfs2015-3.png index e4b89154fd5eca11e53d0faf7f9748a67d87d9b5..004866385e0d21f896577d9320084ddcee05e4bf 100644 GIT binary patch literal 32047 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 Do3N1eO1S(eGR*5@gCFRX#lF#gZBau)j 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%0D;*#Wy6l)7 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 T{@o3D6##>$tDnm{r-UW|!Dh^r From 40912298d834e47fbdace0cd1a3711c4646f7fe2 Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Thu, 2 Jul 2015 09:27:05 -0700 Subject: [PATCH 02/17] Fixed typos --- Readme.md | 2 +- known-issues/known-issues-android.md | 2 +- known-issues/known-issues-cordova5.md | 2 +- known-issues/known-issues-debugger.md | 2 +- known-issues/known-issues-general.md | 2 +- known-issues/known-issues-ripple-cordova.md | 2 +- known-issues/known-issues-vs2013.md | 2 +- known-issues/known-issues-vs2015.md | 2 +- known-issues/known-issues-windows.md | 2 +- tips-and-workarounds/README.md | 2 +- tips-and-workarounds/ios/README.md | 2 +- tutorial-cordova-5/README.md | 6 +-- tutorial-cordova-5/cordova-5-security.md | 44 ++++++++++----------- tutorial-gulp/README.md | 2 +- tutorial-gulp/gulp-ci.md | 2 +- tutorial-gulp/gulp-task-runner-explorer.md | 2 +- tutorial-gulp/gulp-typescript.md | 2 +- tutorial-package-publish/README.md | 2 +- tutorial-team-build/Jenkins.md | 2 +- 19 files changed, 42 insertions(+), 42 deletions(-) diff --git a/Readme.md b/Readme.md index 0a85f256..1cec54ac 100644 --- a/Readme.md +++ b/Readme.md @@ -46,7 +46,7 @@ Help us improve out docuementaiton by sending us a pull-request or opening a [Gi * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) diff --git a/known-issues/known-issues-android.md b/known-issues/known-issues-android.md index 95d3e05f..8a6adb4e 100644 --- a/known-issues/known-issues-android.md +++ b/known-issues/known-issues-android.md @@ -46,6 +46,6 @@ If this does not resolve the issue, you can upgrade to a 64-bit version of the J * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-cordova5.md b/known-issues/known-issues-cordova5.md index 80121ca2..465a1563 100644 --- a/known-issues/known-issues-cordova5.md +++ b/known-issues/known-issues-cordova5.md @@ -74,7 +74,7 @@ Finally, if you are still build errors, you may want to opt to remove and re-add * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-debugger.md b/known-issues/known-issues-debugger.md index 0138fc3a..e42ee1ba 100644 --- a/known-issues/known-issues-debugger.md +++ b/known-issues/known-issues-debugger.md @@ -58,6 +58,6 @@ This article covers [known issues and limitations](../Readme.md#knownissues) rel * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-general.md b/known-issues/known-issues-general.md index 72a66117..871a02a9 100644 --- a/known-issues/known-issues-general.md +++ b/known-issues/known-issues-general.md @@ -62,6 +62,6 @@ Remove these files from source control if you are not checking in the "platforms * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-ripple-cordova.md b/known-issues/known-issues-ripple-cordova.md index 0f757f17..26a90971 100644 --- a/known-issues/known-issues-ripple-cordova.md +++ b/known-issues/known-issues-ripple-cordova.md @@ -28,6 +28,6 @@ This article covers general [known issues](../Readme.md#knownissues) related to * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-vs2013.md b/known-issues/known-issues-vs2013.md index a1a98e8c..d512dc78 100644 --- a/known-issues/known-issues-vs2013.md +++ b/known-issues/known-issues-vs2013.md @@ -49,7 +49,7 @@ Alternatively you can install version 0.2.7 instead by using the following comma * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-vs2015.md b/known-issues/known-issues-vs2015.md index 8191254f..5ba2c2f2 100644 --- a/known-issues/known-issues-vs2015.md +++ b/known-issues/known-issues-vs2015.md @@ -164,6 +164,6 @@ Remove these files from source control if you are not checking in the "platforms * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/known-issues/known-issues-windows.md b/known-issues/known-issues-windows.md index 94495f9a..512fa359 100644 --- a/known-issues/known-issues-windows.md +++ b/known-issues/known-issues-windows.md @@ -18,6 +18,6 @@ You can read more about the issue on the [MS Open Tech blog](http://go.microsoft * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto://multidevicehybridapp@microsoft.com) diff --git a/tips-and-workarounds/README.md b/tips-and-workarounds/README.md index b06a3b32..053bec44 100644 --- a/tips-and-workarounds/README.md +++ b/tips-and-workarounds/README.md @@ -18,6 +18,6 @@ Help us improve out docuementaiton by sending us a pull-request or opening a [Gi * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tips-and-workarounds/ios/README.md b/tips-and-workarounds/ios/README.md index 6c895e99..4cb79408 100644 --- a/tips-and-workarounds/ios/README.md +++ b/tips-and-workarounds/ios/README.md @@ -71,7 +71,7 @@ To resolve this problem you have two options: * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) diff --git a/tutorial-cordova-5/README.md b/tutorial-cordova-5/README.md index 9ed10708..36b4544c 100644 --- a/tutorial-cordova-5/README.md +++ b/tutorial-cordova-5/README.md @@ -1,7 +1,7 @@ #Using Apache Cordova 5 **Note that this documentation applies to Visual Studio 2015 and does not apply to Visual Studio 2013 CTPs.** -Tools for Apache Cordova supports cordova 4.3.1 along with the newly released Cordova 5.1.1 version of cordova. As the major version number increase implies, Cordova 5 is a departure from 3.x and 4.x versions of Cordova in a number of very important ways. Note that there were a number of issues with Cordova 5.0.0 itself that kept us from recommending its use including an [Android security issue](https://github.com/Chuxel/cordova-docs/tree/master/tips-and-workarounds/android/security-05-26-2015). As a result, we strongly reccomend the use of **Cordova 5.1.1** with **Visual Studio 2015 RTM** and up. +Tools for Apache Cordova supports cordova 4.3.1 along with the newly released Cordova 5.1.1 version of cordova. As the major version number increase implies, [Apache Cordova 5](http://cordova.apache.org/docs/en/5.1.1/index.html) is a departure from 3.x and 4.x versions of Cordova in a number of very important ways. Note that there were a number of issues with Cordova 5.0.0 itself that kept us from recommending its use including an [Android security issue](https://github.com/Chuxel/cordova-docs/tree/master/tips-and-workarounds/android/security-05-26-2015). As a result, we strongly reccomend the use of **Cordova 5.1.1** with **Visual Studio 2015 RTM** and up. This article will summarize the changes in Cordova 5 and how you can take advantage of some of its new features and adapt existing apps. Specifically it will cover: @@ -54,11 +54,11 @@ One of the more confusing changes about Cordova 5 is that the updated version of There are a whole host of new security features available and we **strongly reccomend you read the [Introduction to Cordova 5 Security](./cordova-5-security.md) document** for a introduction on them. This article will focus on getting you up and running with the basics. ###The New Whitelist Plugin -The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml element used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. +The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. The problem with this model is you may want to be able to make an XHR request to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://cordova.apache.org/announcements/2014/08/04/android-351.html) which has led to a syntax that strayed away from the original [W3C Widget spec](http://www.w3.org/TR/widgets/) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. -As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allows-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allows-intent** element has been introduced specifically designed to control Android intents. +As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allow-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allow-intent** element has been introduced specifically designed to control Android intents. Projects created using the Cordova CLI contain fairly restrictive rules that are intended to represent a reasonable starting point for most projects. Specifically it: diff --git a/tutorial-cordova-5/cordova-5-security.md b/tutorial-cordova-5/cordova-5-security.md index 0aa43108..bf3cd197 100644 --- a/tutorial-cordova-5/cordova-5-security.md +++ b/tutorial-cordova-5/cordova-5-security.md @@ -1,8 +1,8 @@ #Introduction to Cordova 5 Security -One of the more confusing changes about Cordova 5 is that the updated version of the Android platform (also called Cordova Android 4.x) and iOS now follow a different, but more powerful security model designed to provide developers with the tools needed to prevent cross-site scripting attacks among other issues. A critical aspect of this security model is that **absolutely no network access of any kind is allowed without the installation of a Cordova plugin**. +One of the more confusing changes about [Apache Cordova 5](http://cordova.apache.org/docs/en/5.1.1/index.html) is that the updated version of the Android platform (also called Cordova Android 4.x) and iOS now follow a different, but more powerful security model designed to provide developers with the tools needed to prevent cross-site scripting attacks among other issues. A critical aspect of this security model is that **absolutely no network access of any kind is allowed without the installation of a Cordova plugin**. ##Cordova Whitelists -The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml element used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. +The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. ~~~~~~~~~~~~~~~~~~~~~~~ @@ -11,9 +11,9 @@ The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com The problem with this model is you may want to be able to make an XHR to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://cordova.apache.org/announcements/2014/08/04/android-351.html) which has led to a syntax that strayed away from the original [W3C Widget spec](http://www.w3.org/TR/widgets/) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. ###cordova-plugin-whitelist -As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allows-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allows-intent** element has been introduced specifically designed to control Android intents. +As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allow-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allow-intent** element has been introduced specifically designed to control Android intents. -The default Cordova CLI template has a config.xml file in it that is designed to allow the app to make external requests anywhere, allows a specific subset of intents, and prevents the WebView in the Cordova app to navigate anywhere other than local content. +The base [Cordova CLI](http://aka.ms/cordova-cli) template (via the cordova create command) has a config.xml file in it that is designed to allow the app to make external requests anywhere, allows a specific subset of intents, and prevents the WebView in the Cordova app to navigate anywhere other than local content. ~~~~~~~~~~~~~~~~~~~~~~~ @@ -37,22 +37,22 @@ There is still some variation in behavior by platform for these whitelist featur 1. **Android** supports the use of access, allow-navigation, and allows-intent. Intents are an Android specific concept. 2. **iOS** supports the use of access, and allow-navigation. -3. **Windows 10** via the Windows platform supports the allow-navigation element. The access element behaves slightly differently in that navigation is allowed to these URIs but Cordova and plugin APIs are disabled thereby reducing risk. XHR, CSS, and image access rules are intended to be controlled by a Content Security Policy (CSP) rather than specific whitelists. We'll cover more details on how to use CSPs later in this document. -4. **Windows 8.0, 8.1, and Windows Phone 8.1** via the Windows platform does support the navigating to external URIs outside of a x-ms-webview element or the InAppBrowser plugin due to fundamental platform limitations. XHR calls are always allowed to any domain. -5. The **Windows Phone 8 (WP8)** platform still uses the old definition of the access element. +3. **Windows 10** via the Windows platform supports the allow-navigation element exactly like iOS and Android. The access element is also supported but behaves a bit differently in that navigation is allowed to these URIs but Cordova and plugin APIs are disabled thereby reducing risk. In Windows 10, XHR, CSS, and image access rules are intended to be controlled by a Content Security Policy (CSP) via connect-src rather than specific whitelists. We'll cover more details on how to use CSPs later in this document. +4. **Windows 8.0, 8.1, and Windows Phone 8.1** via the Windows platform does not support navigating to external URIs outside of the InAppBrowser plugin due to fundamental platform limitations. XHR calls are always allowed to any domain. +5. The **Windows Phone 8 (WP8)** platform still uses the old definition of the access element and does not support allow-navigation or allow-intent. Note that if you would prefer to retain the old behavior of the access element for Android and iOS, you can install [cordova-plugin-legacy-whitelist](https://github.com/apache/cordova-plugin-legacy-whitelist) though this is intended only to be used for backwards compatibility and new apps should generally move towards using cordova-plugin-whitelist. ###Automatically Adding the Plugin -You will also notice this default template contains the following in config.xml: +A new feature in Cordova 5.0.0+ allows you specify plugins in config.xml that are then automatically added at build time. This capability can be used with any Cordova plugin and is conceptually similar to the Visual Studio specific "vs:plugin" element. We worked with the community to get it added into the core and over time we will discontinue the use of the "vs" prefix but we have left the feature in place for backwards compatibility (as Cordova 4.3.0 does not have this feature). Near term most VS documentation will recommend the use of "vs:plugin" instead. + +Cordova 5.0.0+: ~~~~~~~~~~~~~~~~~~~~~~~ - + ~~~~~~~~~~~~~~~~~~~~~~~ -This takes advantage of a new feature in Cordova 5.0.0+ to ensure the Cordova Whitelist plugin (whose ID is cordova-plugin-whitelist) is automatically installed if it is not present when the project is prepared for building any platform. It will automatically add the latest version of the plugin whose version number starts with 1 (1.x.x). You can also update this to be a specific version or remove this element and install the plugin yourself. - -Note that this capability can be used with any Cordova plugin and is conceptually similar to the Visual Studio specific "vs:plugin" element. We worked with the community to get it added into the core and over time we will discontinue the use of the "vs" prefix but we have left the feature in place for backwards compatibility (as Cordova 4.3.0 does not have this feature). Near term most VS documentation will recommend the use of "vs:plugin" instead. Ex: +VS syntax (works with any Cordova version): ~~~~~~~~~~~~~~~~~~~~~~~ @@ -63,9 +63,9 @@ Note that this capability can be used with any Cordova plugin and is conceptuall A topic of frequent conversation for security focused developers on the web is the [W3C Content Security Policy (CSP)](http://www.w3.org/TR/CSP/) feature that is available in Chrome, Safari, and Internet Explorer Edge. CSP support is available natively to Cordova apps targeting iOS, Windows 10 and up, and Android 4.4 and up. However, you can get support back to Android 4.0 by using something called the Crosswalk WebView. See [Using Apache Cordova 5](./README.md#crosswalk) for information adding Crosswalk to your project. ###The CSP in Cordova 5 -The CSP is a native browser capability that allows you to control exactly what content your app can access and at a very granular level. In fact, when using the CSP, you can generally keep the access origin to "*" as you'll be able to more tightly control security using the policy. +CSP support is a native browser capability that allows you to control exactly what content your app can access and at a very granular level. In fact, when using the CSP, you can generally keep the access origin to "*" as you'll be able to more tightly control security using the policy. -A CSP policy is applied at a page level through a few different mechanisms, but for Cordova apps you typically use a meta tag. Here is the CSP policy on index.html in the default Cordova template: +A CSP is applied at a page level through a few different mechanisms, but for Cordova apps you typically use a meta tag. Here is the CSP policy on index.html in the default Cordova CLI project template: ~~~~~~~~~~~~~~~~~~~~~~~ @@ -77,12 +77,12 @@ The only problem with the CSP is this: It's pretty confusing to read at first an You can find a [great tutorial on using the CSP in detail here](http://www.html5rocks.com/en/tutorials/security/content-security-policy/), but here are some common "gotchas" for those new to the concepts: -1. By default, applying a CSP **disables both eval() and inline script** while the CSP policy in the **Cordova template leave inline disabled but enables eval()**. +1. By default, applying a CSP **disables both eval() and inline script** while the CSP policy in the **Cordova CLI template (cordova create command) disables inline but allows eval()**. - Disabling both eval and inline script means no script tags with JavaScript in it, no "on" event handler attributes on HTML elements, no eval(), no new Function(), etc. Disabling these features effectively makes it impossible to do cross-site scripting because there is no way to inject JavaScript anywhere that does not originate from a file. If you're property managing your whitelists, you're very secure. - The problem is that disabling eval() in particular can break quite a few web frameworks. - - As a result, the CSP in the base Cordova template specifies **unsafe-eval** for **default-src** which enables JavaScript code to use eval and similar dynamic script techniques. Ex: + - As a result, the CSP in the base Cordova CLI template specifies **unsafe-eval** for **default-src** which enables JavaScript code to use eval and similar dynamic script techniques. Ex: ~~~~~~~~~~~~~~~~~~~~~~~ default-src 'self' 'unsafe-eval'; @@ -90,13 +90,13 @@ You can find a [great tutorial on using the CSP in detail here](http://www.html5 - If your app and your frameworks don't need eval, remove the unsafe-eval declaration. - - If you really need inline script, you can add the 'unsafe-inline' declaration. Of the two, inline script is actually a higher risk than eval since something as simple as using innerHTML without proper filtering can allow a hacker to add inline script. Inline script is very common, but if your app is security focused, you should avoid it. Note that the 'unsafe-inline' declaration in the Cordova template applies to style-src which enables inline CSS declarations not JavaScript. + - If you really need inline script, you can add the 'unsafe-inline' declaration. Of the two, inline script is actually a higher risk than eval since something as simple as using innerHTML without proper filtering can allow a hacker to add inline script. Inline script is very common, but if your app is security focused, you should avoid it. Note that the 'unsafe-inline' declaration in the Cordova CLI template applies to style-src which enables inline CSS declarations not JavaScript. -1. The default CSP policy in the Cordova template only allows access to JavaScript and CSS files inside the app or the same domain, not a different domain. **As a result, CDN hosted content typically cannot be referenced.** +1. The default CSP policy in the Cordova CLI template only allows access to JavaScript and CSS files inside the app or the same domain, not a different domain. **As a result, CDN hosted content typically cannot be referenced.** - This is another technique to reduce risk by stating that a given web page can only reference content from **'self'**. The end result is that cross-site scripting vulnerabilities are further reduced by preventing your web page from being hijacked to include content from an external, untrusted sourced. - - You can loosen this restriction by listing other trusted domains. In fact, the default Cordova template lists "https://ssl.gstatic.com" as a trusted domain since Android needs it for TalkBack to function properly. + - You can loosen this restriction by listing other trusted domains. In fact, the default Cordova CLI template lists "https://ssl.gstatic.com" as a trusted domain since Android needs it for TalkBack to function properly. ~~~~~~~~~~~~~~~~~~~~~~~ default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; @@ -111,7 +111,7 @@ When you upgrade a project to Cordova 5.0.0+ from Cordova 4.3.1 or below in Visu 1. Right-click on config.xml and select "View Code" - 2. Add the following XML elements under the <widget> element: + 2. Add the following XML element under the <widget> element: ~~~~~~~~~~~~~~~~~~~~~~~ @@ -119,7 +119,7 @@ When you upgrade a project to Cordova 5.0.0+ from Cordova 4.3.1 or below in Visu The next time you build in Visual Studio, VS will install this version of the whitelist plugin. You can update the version number as needed. -2. Update config.xml with the allow-intent or allow-navigation elements as needed: +2. Update config.xml with allow-intent or allow-navigation elements as needed: 1. If you have not already, right-click on config.xml and select "View Code" @@ -146,7 +146,7 @@ When you upgrade a project to Cordova 5.0.0+ from Cordova 4.3.1 or below in Visu However, we strongly recommend narrowing down your access before releasing your app as many app stores will not accept apps that are completely open without filing for an exception and having a very good reason to do so. -3. Due to the significant security benefits associated with using a CSP policy, we strongly recommend taking the Cordova template's CSP metatag and add it to the header of any page the app will navigate to in your app. Note that **you can use add a CSP meta tag to hosted content too.** +3. Due to the significant security benefits associated with using a CSP, we strongly recommend taking the Cordova CLI template's CSP metatag and add it to the header of any page the app will navigate to in your app. Note that **you can use add a CSP meta tag to hosted content too.** ~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/tutorial-gulp/README.md b/tutorial-gulp/README.md index 95bf3e72..d9d3c914 100644 --- a/tutorial-gulp/README.md +++ b/tutorial-gulp/README.md @@ -12,6 +12,6 @@ * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-gulp/gulp-ci.md b/tutorial-gulp/gulp-ci.md index 75f37e1d..2979e995 100644 --- a/tutorial-gulp/gulp-ci.md +++ b/tutorial-gulp/gulp-ci.md @@ -187,6 +187,6 @@ npm install --save-dev gulp-uglify * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-gulp/gulp-task-runner-explorer.md b/tutorial-gulp/gulp-task-runner-explorer.md index 783d3441..327f6b24 100644 --- a/tutorial-gulp/gulp-task-runner-explorer.md +++ b/tutorial-gulp/gulp-task-runner-explorer.md @@ -201,6 +201,6 @@ npm install --save-dev gulp-uglify * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-gulp/gulp-typescript.md b/tutorial-gulp/gulp-typescript.md index c8b993c0..d783b18e 100644 --- a/tutorial-gulp/gulp-typescript.md +++ b/tutorial-gulp/gulp-typescript.md @@ -82,6 +82,6 @@ gulp watch * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-package-publish/README.md b/tutorial-package-publish/README.md index 6e4ad2fb..ee10f71a 100644 --- a/tutorial-package-publish/README.md +++ b/tutorial-package-publish/README.md @@ -187,6 +187,6 @@ The Manage Your Apps page of iTunes Connect should now list an updated status fo * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file diff --git a/tutorial-team-build/Jenkins.md b/tutorial-team-build/Jenkins.md index c033c81d..592dc36a 100644 --- a/tutorial-team-build/Jenkins.md +++ b/tutorial-team-build/Jenkins.md @@ -235,6 +235,6 @@ The OSX version of the build is similar but adds one additional requirement: Unl * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) -* [Read MSDN docs on using Visual Studo Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) +* [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) * [Email us your questions](mailto:/vscordovatools@microsoft.com) From f0a9fa8c3213ac8fff8efc3f47d8b3cc834c67e1 Mon Sep 17 00:00:00 2001 From: "clantz@microsoft.com" Date: Thu, 2 Jul 2015 15:35:46 -0700 Subject: [PATCH 03/17] Switched direct links to fwlinks, misc edits --- Readme.md | 8 +++--- tutorial-cordova-5/README.md | 32 ++++++++++++------------ tutorial-cordova-5/cordova-5-security.md | 14 +++++------ tutorial-team-build/Jenkins.md | 2 +- tutorial-team-build/README.md | 4 +-- tutorial-team-build/TFS2013.md | 2 +- tutorial-team-build/TFS2015.md | 2 +- 7 files changed, 32 insertions(+), 32 deletions(-) diff --git a/Readme.md b/Readme.md index 1cec54ac..ba75f79f 100644 --- a/Readme.md +++ b/Readme.md @@ -11,10 +11,10 @@ This repository contains a set of documents and tutorials for the **Visual Studi 1. [Using Gulp to Build Cordova Projects](./tutorial-gulp/gulp-ci.md) 1. [Invoking Gulp Tasks During a Cordova Build and the VS Task Runner Explorer](./tutorial-gulp/gulp-task-runner-explorer.md) 1. [Compiling TypeScript wit Gulp](./tutorial-gulp/gulp-typescript.md) -1. [Building Cordova Apps in a Team / Continuous Integration Environment](./tutorial-team-build) - 1. [Getting Start with Cordova & TFS 2015 or Visual Studio Online](./tutorial-team-build/TFS2015.md) - 1. [Getting Start with Cordova & TFS 2013](./tutorial-team-build/TFS2013.md) - 1. [Getting Start with Cordova & Jenkins CI](./tutorial-team-build/Jenkins.md) +1. [Building Cordova Apps in a Team / Continuous Integration (CI) Environment](./tutorial-team-build) + 1. [Getting Started with Cordova & TFS 2015 or Visual Studio Online](./tutorial-team-build/TFS2015.md) + 1. [Getting Started with Cordova & TFS 2013](./tutorial-team-build/TFS2013.md) + 1. [Getting Started with Cordova & Jenkins CI](./tutorial-team-build/Jenkins.md) 1. [Package & Publish your Cordova Applications](./tutorial-package-publish) diff --git a/tutorial-cordova-5/README.md b/tutorial-cordova-5/README.md index 36b4544c..63b5d522 100644 --- a/tutorial-cordova-5/README.md +++ b/tutorial-cordova-5/README.md @@ -1,7 +1,7 @@ #Using Apache Cordova 5 **Note that this documentation applies to Visual Studio 2015 and does not apply to Visual Studio 2013 CTPs.** -Tools for Apache Cordova supports cordova 4.3.1 along with the newly released Cordova 5.1.1 version of cordova. As the major version number increase implies, [Apache Cordova 5](http://cordova.apache.org/docs/en/5.1.1/index.html) is a departure from 3.x and 4.x versions of Cordova in a number of very important ways. Note that there were a number of issues with Cordova 5.0.0 itself that kept us from recommending its use including an [Android security issue](https://github.com/Chuxel/cordova-docs/tree/master/tips-and-workarounds/android/security-05-26-2015). As a result, we strongly reccomend the use of **Cordova 5.1.1** with **Visual Studio 2015 RTM** and up. +Tools for Apache Cordova supports cordova 4.3.1 along with the newly released Cordova 5.1.1 version of cordova. As the major version number increase implies, [Apache Cordova 5](http://http://go.microsoft.com/fwlink/?LinkID=617659) is a departure from 3.x and 4.x versions of Cordova in a number of very important ways. Note that there were a number of issues with Cordova 5.0.0 itself that kept us from recommending its use including an [Android security issue](http://http://go.microsoft.com/fwlink/?LinkID=617658). As a result, we strongly reccomend the use of **Cordova 5.1.1** with **Visual Studio 2015 RTM** and up. This article will summarize the changes in Cordova 5 and how you can take advantage of some of its new features and adapt existing apps. Specifically it will cover: @@ -30,13 +30,13 @@ Historically Cordova and all its components have used one unified version number Understanding these differences can be important when reading blog posts or updates on the Cordova web site. Here is how these different components are typically described: -- **Cordova 5.1.1** refers to version 5.1.1 of the [Cordova CLI](http://cordova.apache.org/docs/en/5.0.0/guide_cli_index.md.html#The%20Command-Line%20Interface) (and an underlying core library called [cordova-lib](https://www.npmjs.com/package/cordova-lib)). [Documentation](http://cordova.apache.org/docs/en/5.0.0/guide_overview_index.md.html#Overview) on the Cordova web site will also refer to this version number. +- **Cordova 5.1.1** refers to version 5.1.1 of the [Cordova CLI](http://go.microsoft.com/fwlink/?LinkID=533773) (and an underlying core library called [cordova-lib](http://go.microsoft.com/fwlink/?LinkID=617661)). [Documentation](http://go.microsoft.com/fwlink/?LinkID=617659) on the Cordova web site will also refer to this version number. -- **Cordova CLI 5.1.1** is largely equivalent to Cordova 5.1.1 but is specifically referring to the [Cordova CLI npm package](https://www.npmjs.com/package/cordova). +- **Cordova CLI 5.1.1** is largely equivalent to Cordova 5.1.1 but is specifically referring to the [Cordova CLI npm package](http://go.microsoft.com/fwlink/?LinkID=617660). -- **Platform versions** follow a different numbering scheme. A given Cordova CLI version "pins" a set of platform versions by default since all testing for the release was done using this specific combination of components. The Cordova OSS project does not typically back-test earlier versions of the CLI with newer platforms unless specifically noted in the release notes. You will typically see these platform versions mentioned in a form similar to "Cordova Android 4.0.0". This naming scheme inherits its name from the [cordova-android](https://www.npmjs.com/package/cordova-android) and other similarly named npm packages that are installed when the platform is added to your project. Visual Studio will automatically perfom this "platform add" operation on your behalf but you may notice a version number like this in the Output Window when you build. +- **Platform versions** follow a different numbering scheme. A given Cordova CLI version "pins" a set of platform versions by default since all testing for the release was done using this specific combination of components. The Cordova OSS project does not typically back-test earlier versions of the CLI with newer platforms unless specifically noted in the release notes. You will typically see these platform versions mentioned in a form similar to "Cordova Android 4.0.0". This naming scheme inherits its name from the [cordova-android](http://go.microsoft.com/fwlink/?LinkID=617662) and other similarly named npm packages that are installed when the platform is added to your project. Visual Studio will automatically perfom this "platform add" operation on your behalf but you may notice a version number like this in the Output Window when you build. - The following Cordova platform versions supported by Tools for Apache Cordova are pinned in **Cordova CLI 5.1.1** (or [see here](http://cordova.apache.org/news/2015/06/10/tools-release.html) for a complete list): + The following Cordova platform versions supported by Tools for Apache Cordova are pinned in **Cordova CLI 5.1.1** (or [see here](http://go.microsoft.com/fwlink/?LinkID=617667) for a complete list): - Cordova Android 4.0.2 - Cordova iOS 3.8.0 @@ -54,9 +54,9 @@ One of the more confusing changes about Cordova 5 is that the updated version of There are a whole host of new security features available and we **strongly reccomend you read the [Introduction to Cordova 5 Security](./cordova-5-security.md) document** for a introduction on them. This article will focus on getting you up and running with the basics. ###The New Whitelist Plugin -The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. +The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](http://go.microsoft.com/fwlink/?LinkID=617668) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. -The problem with this model is you may want to be able to make an XHR request to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://cordova.apache.org/announcements/2014/08/04/android-351.html) which has led to a syntax that strayed away from the original [W3C Widget spec](http://www.w3.org/TR/widgets/) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. +The problem with this model is you may want to be able to make an XHR request to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://go.microsoft.com/fwlink/?LinkID=617669) which has led to a syntax that strayed away from the original [W3C Widget spec](http://go.microsoft.com/fwlink/?LinkID=617670) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allow-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allow-intent** element has been introduced specifically designed to control Android intents. @@ -121,26 +121,26 @@ When you upgrade a project to Cordova 5.0.0+, you will want to take the followin ##Primary Cordova Plugin Repository is Now Npm -Another significant departure in Cordova 5 and the community as a whole is the migration of the primary source of Cordova plugins from the custom repository backed model that exists in Cordova 3.x and 4.x to the "Node Package Manager" (npm) repository. The plugins.cordova.io repository has seen a few service interruptions and given the web community's increased use of Node.js for client-side development and Cordova's heavy use of npm for not only its command line interface but as a source for Cordova "platforms," the natural next step was to migrate plugins to npm as well. More details on this transition [can be found here.](http://cordova.apache.org/announcements/2015/04/21/plugins-release-and-move-to-npm.html) +Another significant departure in Cordova 5 and the community as a whole is the migration of the primary source of Cordova plugins from the custom repository backed model that exists in Cordova 3.x and 4.x to the "Node Package Manager" (npm) repository. The plugins.cordova.io repository has seen a few service interruptions and given the web community's increased use of Node.js for client-side development and Cordova's heavy use of npm for not only its command line interface but as a source for Cordova "platforms," the natural next step was to migrate plugins to npm as well. More details on this transition [can be found here.](http://go.microsoft.com/fwlink/?LinkID=617671) However, unfortunately this switch over is not transparent. For a few very specific reasons, this change over can be a bit confusing and we're working with the community to determine some ways to make the transition a bit more seamless going forward. ###Plugin ID Changes A significant change to be aware of is that the IDs used to refer to many Cordova plugins have changed. This was done for two reasons. First, the different ID helps to re-enforce that older versions of Cordova will not get plugin updates. Rather than having an arbitrary version number where the updates stop, using a different ID makes this change over explicit. Second, the old reverse domain style for Cordova plugin IDs does not conform to community best practices for package names in npm. -As a result, core plugins like Camera have changed from [org.apache.cordova.camera](http://plugins.cordova.io/#/package/org.apache.cordova.camera) in version 0.3.6 of the plugin to [cordova-plugin-camera](https://www.npmjs.com/package/cordova-plugin-camera) in versions 1.0.0 and higher. +As a result, core plugins like Camera have changed from [org.apache.cordova.camera](http://go.microsoft.com/fwlink/?LinkID=617672) in version 0.3.6 of the plugin to [cordova-plugin-camera](http://go.microsoft.com/fwlink/?LinkID=617673) in versions 1.0.0 and higher. ![Custom Local Plugin]() ![Custom Local Plugin]() -You can find running list of [old verses new plugin IDs in this location](https://github.com/stevengill/cordova-registry-mapper/blob/master/index.js). You will be informed of the new ID whenever you add a plugin from this list when either using the command line or the config.xml designer. The config.xml designer will automatically add these new IDs for Cordova 5.0.0+ and the old IDs for older versions of Cordova that do not support them. +You can find running list of [old verses new plugin IDs in this location](http://go.microsoft.com/fwlink/?LinkID=617674). You will be informed of the new ID whenever you add a plugin from this list when either using the command line or the config.xml designer. The config.xml designer will automatically add these new IDs for Cordova 5.0.0+ and the old IDs for older versions of Cordova that do not support them. ###Cordova Plugin Registry Unfortunately the community is in a state of flux when it comes to a "source of truth" for all available Cordova plugins. - For the time being, [plugins.cordova.io](http://plugins.cordova.io) **does not contain npm sourced plugins.** -- For npm sourced plugins, you should instead search npm using the [ecosystem:cordova](https://www.npmjs.com/search?q=ecosystem%3Acordova) tag. +- For npm sourced plugins, you should instead search npm using the [ecosystem:cordova](http://go.microsoft.com/fwlink/?LinkID=617675) tag. ![Custom Local Plugin]() @@ -158,7 +158,7 @@ Generally your best course of action if you need an updated plugin is to also up ##Gradle Build Instead of Ant for Android On the surface, this seems like a fairly innocuous change but we've continued to hear about unexpected issues in some 3rd party Cordova plugins because of this change so it is worth a mention. -Up until Cordova 5.0.0 (Cordova Android platform version 4.0.0), Cordova used [Apache Ant](http://ant.apache.org/) as the primary build system to build an Android version of an app. This has now changed to [Gradle](http://gradle.org/) as the default though developers can force an Ant build using the Cordova CLI as follows: +Up until Cordova 5.0.0 (Cordova Android platform version 4.0.0), Cordova used [Apache Ant](http://go.microsoft.com/fwlink/?LinkID=617676) as the primary build system to build an Android version of an app. This has now changed to [Gradle](http://gradle.org/) as the default though developers can force an Ant build using the Cordova CLI as follows: ~~~~~~~~~~~~~~~~~~~~~~~ cordova build android -- --ant @@ -170,7 +170,7 @@ There are three major ways that switching to Gradle can affect your project: 1. Some 3rd party plugins may now require Gradle and thus typically only work on Cordova 5.0.0 and up. In particular, plugins that modify Android build artifacts in a non-standard way can run into issues. 1. Other 3rd party plugins may not have updated to support Gradle yet and still require Ant to be used. Generally these plugins are designed for Cordova versions < 5.0.0. -A good example of a plugin that requires Gradle is the [Crosswalk plugin](https://github.com/crosswalk-project/cordova-plugin-crosswalk-webview) we will cover a bit in this article. While at one point it also worked with Ant builds, it now errors out if you are not building with Gradle. As a result, Visual Studio 2015 now uses Gradle to build Android in Cordova 5.0.0+ instead of Ant (2015 RC still used Ant). The end result is you could hit compatibility issues with lesser known 3rd party plugins particularly if you have not updated them. +A good example of a plugin that requires Gradle is the [Crosswalk plugin](http://go.microsoft.com/fwlink/?LinkID=617677) we will cover a bit in this article. While at one point it also worked with Ant builds, it now errors out if you are not building with Gradle. As a result, Visual Studio 2015 now uses Gradle to build Android in Cordova 5.0.0+ instead of Ant (2015 RC still used Ant). The end result is you could hit compatibility issues with lesser known 3rd party plugins particularly if you have not updated them. ###Migrating an Existing Project to Use Gradle @@ -201,9 +201,9 @@ Because of these differences you should take the following steps: ##Pluggable WebViews and the Crosswalk WebView for Android An exciting new development in the Cordova Android platform is the support for what are called "pluggable WebViews." What this feature allows you to do is swap out the built in Android WebView with a completely different WebView implementation. This is a significant improvement as the Android browser and thus the WebView has been locked at a specific version without the ability to update unless you update the version of the OS on the device. This has changed in the Android OS as of 5.0 (API 22), but unlike iOS or Windows where devices can opt to upgrade and developers need only concern themselves with a few major versions of the browser, older Android devices are locked at a particular sub-revision of Android and thus the browser with no ability to upgrade the device in many cases. The end result has been a vast array of small differences between Android devices. -[Crosswalk](https://crosswalk-project.org/) is a project that is designed to allow developers to take embed a very recent and specific version of the Chromium WebView inside their Android app. The Crosswalk WebView can be embedded in apps running on Android 4.0 and up and brings with it the significant advantage of a consistent WebView implementation across all Android device versions it supports. +[Crosswalk](http://go.microsoft.com/fwlink/?LinkID=617678) is a project that is designed to allow developers to take embed a very recent and specific version of the Chromium WebView inside their Android app. The Crosswalk WebView can be embedded in apps running on Android 4.0 and up and brings with it the significant advantage of a consistent WebView implementation across all Android device versions it supports. -There is now a [Cordova Crosswalk plugin](https://www.npmjs.com/package/cordova-plugin-crosswalk-webview/) that takes advantage of the new pluggable WebView features in Cordova 5.0.0+ (and the Cordova Android 4.0.0 platform it uses) and makes it simple to add into your project. +There is now a [Cordova Crosswalk plugin](http://go.microsoft.com/fwlink/?LinkID=617679) that takes advantage of the new pluggable WebView features in Cordova 5.0.0+ (and the Cordova Android 4.0.0 platform it uses) and makes it simple to add into your project. *Note: Because using the Crosswalk plugin does slow down build times given its size, we recommend developers start out building apps with the stock Android WebView on a recent device or emulator (Android 4.4+). You can then add the Crosswalk plugin later in your development cycle and make the necessary adjustments.* @@ -233,7 +233,7 @@ _JAVA_OPTIONS=-Xmx512M ##Windows 10 Support -Historically, Windows and Windows Phone 8.1 have had a number of compatibility challenges with Cordova apps due to underlying platform differences around security rules. A [JavaScript compatibility](https://github.com/MsopenTech/winstore-jscompat) framework was released to help alleviate some of these issues on 8.1, but starting with **Cordova 5.1.1**, you can now build Windows 10 apps. In addition to supporting the new Windows Universal platform that allows a single code base and app package to be used across a number of different devices, Windows 10 also brings a number of significant improvments to Apache Cordova users. +Historically, Windows and Windows Phone 8.1 have had a number of compatibility challenges with Cordova apps due to underlying platform differences around security rules. A [JavaScript compatibility](http://go.microsoft.com/fwlink/?LinkID=617680) framework was released to help alleviate some of these issues on 8.1, but starting with **Cordova 5.1.1**, you can now build Windows 10 apps. In addition to supporting the new Windows Universal platform that allows a single code base and app package to be used across a number of different devices, Windows 10 also brings a number of significant improvments to Apache Cordova users. In particular: diff --git a/tutorial-cordova-5/cordova-5-security.md b/tutorial-cordova-5/cordova-5-security.md index bf3cd197..f2b1630e 100644 --- a/tutorial-cordova-5/cordova-5-security.md +++ b/tutorial-cordova-5/cordova-5-security.md @@ -1,14 +1,14 @@ #Introduction to Cordova 5 Security -One of the more confusing changes about [Apache Cordova 5](http://cordova.apache.org/docs/en/5.1.1/index.html) is that the updated version of the Android platform (also called Cordova Android 4.x) and iOS now follow a different, but more powerful security model designed to provide developers with the tools needed to prevent cross-site scripting attacks among other issues. A critical aspect of this security model is that **absolutely no network access of any kind is allowed without the installation of a Cordova plugin**. +One of the more confusing changes about [Apache Cordova 5](http://go.microsoft.com/fwlink/?LinkID=617659) is that the updated version of the Android platform (also called Cordova Android 4.x) and iOS now follow a different, but more powerful security model designed to provide developers with the tools needed to prevent cross-site scripting attacks among other issues. A critical aspect of this security model is that **absolutely no network access of any kind is allowed without the installation of a Cordova plugin**. ##Cordova Whitelists -The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](https://github.com/apache/cordova-plugin-whitelist) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. +The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](http://go.microsoft.com/fwlink/?LinkID=617668) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ -The problem with this model is you may want to be able to make an XHR to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://cordova.apache.org/announcements/2014/08/04/android-351.html) which has led to a syntax that strayed away from the original [W3C Widget spec](http://www.w3.org/TR/widgets/) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. +The problem with this model is you may want to be able to make an XHR to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://go.microsoft.com/fwlink/?LinkID=617669) which has led to a syntax that strayed away from the original [W3C Widget spec](http://go.microsoft.com/fwlink/?LinkID=617670) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. ###cordova-plugin-whitelist As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allow-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allow-intent** element has been introduced specifically designed to control Android intents. @@ -31,7 +31,7 @@ If we wanted to add the ability for the root WebView to navigate to www.microsof ~~~~~~~~~~~~~~~~~~~~~~~ -Note that if you simply wanted to display www.microsoft.com without giving it access to Cordova or plugin APIs, you can use the **[InAppBrowser plugin](https://github.com/apache/cordova-plugin-inappbrowser)** without adding the allow-navigation element to your config.xml file. +Note that if you simply wanted to display www.microsoft.com without giving it access to Cordova or plugin APIs, you can use the **[InAppBrowser plugin](http://go.microsoft.com/fwlink/?LinkID=617694)** without adding the allow-navigation element to your config.xml file. There is still some variation in behavior by platform for these whitelist features based on the concerns and capabilities of the underlying native technology. @@ -41,7 +41,7 @@ There is still some variation in behavior by platform for these whitelist featur 4. **Windows 8.0, 8.1, and Windows Phone 8.1** via the Windows platform does not support navigating to external URIs outside of the InAppBrowser plugin due to fundamental platform limitations. XHR calls are always allowed to any domain. 5. The **Windows Phone 8 (WP8)** platform still uses the old definition of the access element and does not support allow-navigation or allow-intent. -Note that if you would prefer to retain the old behavior of the access element for Android and iOS, you can install [cordova-plugin-legacy-whitelist](https://github.com/apache/cordova-plugin-legacy-whitelist) though this is intended only to be used for backwards compatibility and new apps should generally move towards using cordova-plugin-whitelist. +Note that if you would prefer to retain the old behavior of the access element for Android and iOS, you can install [cordova-plugin-legacy-whitelist](http://go.microsoft.com/fwlink/?LinkID=617695) though this is intended only to be used for backwards compatibility and new apps should generally move towards using cordova-plugin-whitelist. ###Automatically Adding the Plugin A new feature in Cordova 5.0.0+ allows you specify plugins in config.xml that are then automatically added at build time. This capability can be used with any Cordova plugin and is conceptually similar to the Visual Studio specific "vs:plugin" element. We worked with the community to get it added into the core and over time we will discontinue the use of the "vs" prefix but we have left the feature in place for backwards compatibility (as Cordova 4.3.0 does not have this feature). Near term most VS documentation will recommend the use of "vs:plugin" instead. @@ -60,7 +60,7 @@ VS syntax (works with any Cordova version): ##The W3C Content Security Policy (CSP) -A topic of frequent conversation for security focused developers on the web is the [W3C Content Security Policy (CSP)](http://www.w3.org/TR/CSP/) feature that is available in Chrome, Safari, and Internet Explorer Edge. CSP support is available natively to Cordova apps targeting iOS, Windows 10 and up, and Android 4.4 and up. However, you can get support back to Android 4.0 by using something called the Crosswalk WebView. See [Using Apache Cordova 5](./README.md#crosswalk) for information adding Crosswalk to your project. +A topic of frequent conversation for security focused developers on the web is the [W3C Content Security Policy (CSP)](http://go.microsoft.com/fwlink/?LinkID=617696) feature that is available in Chrome, Safari, and Internet Explorer Edge. CSP support is available natively to Cordova apps targeting iOS, Windows 10 and up, and Android 4.4 and up. However, you can get support back to Android 4.0 by using something called the Crosswalk WebView. See [Using Apache Cordova 5](./README.md#crosswalk) for information adding Crosswalk to your project. ###The CSP in Cordova 5 CSP support is a native browser capability that allows you to control exactly what content your app can access and at a very granular level. In fact, when using the CSP, you can generally keep the access origin to "*" as you'll be able to more tightly control security using the policy. @@ -75,7 +75,7 @@ You will need to include a tag like this on each page you navigate to at the top The only problem with the CSP is this: It's pretty confusing to read at first and its defaults can cause some behaviors web devs are not at all used to working around. -You can find a [great tutorial on using the CSP in detail here](http://www.html5rocks.com/en/tutorials/security/content-security-policy/), but here are some common "gotchas" for those new to the concepts: +You can find a [great tutorial on using the CSP in detail here](http://go.microsoft.com/fwlink/?LinkID=617697), but here are some common "gotchas" for those new to the concepts: 1. By default, applying a CSP **disables both eval() and inline script** while the CSP policy in the **Cordova CLI template (cordova create command) disables inline but allows eval()**. - Disabling both eval and inline script means no script tags with JavaScript in it, no "on" event handler attributes on HTML elements, no eval(), no new Function(), etc. Disabling these features effectively makes it impossible to do cross-site scripting because there is no way to inject JavaScript anywhere that does not originate from a file. If you're property managing your whitelists, you're very secure. diff --git a/tutorial-team-build/Jenkins.md b/tutorial-team-build/Jenkins.md index 592dc36a..a008be5f 100644 --- a/tutorial-team-build/Jenkins.md +++ b/tutorial-team-build/Jenkins.md @@ -230,7 +230,7 @@ The OSX version of the build is similar but adds one additional requirement: Unl **Trouble Shooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](http://go.microsoft.com/fwlink/?LinkID=533743) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. ## More Information -* [Learn about other Team Build / CI options](README.md) +* [Learn about other Team Build / CI options](./README.md) * [Read tutorials and learn about tips, tricks, and known issues](../Readme.md) * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) diff --git a/tutorial-team-build/README.md b/tutorial-team-build/README.md index b4be14d6..e17c6bce 100644 --- a/tutorial-team-build/README.md +++ b/tutorial-team-build/README.md @@ -1,4 +1,4 @@ -#Building Cordova Apps in a Team / Continuous Integration Environment +#Building Cordova Apps in a Team / Continuous Integration (CI) Environment **Note that this documentation applies to Visual Studio 2015 and does not apply to Visual Studio 2013 CTPs.** With the release of Visual Studio 2015, you now have a number of options for how you can integrate Cordova apps with your favorite team / continous integration (CI) server thanks to the fact that projects created in Visual Studio are standard [Apache Cordova Command Line Interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) projects. In this tutorial, we will cover a few different approaches for building Cordova projects outside of Visual Studio. @@ -429,7 +429,7 @@ There are a few relativley common issues when building a Cordova app on OSX rela To resolve this problem you have two options: 1. Don't check in the contents of the "platforms" folder into source control. This is by far the path of least resistance. The Gulp build script can add them at the time you build. - 2. If you absolutely must check in the contents of the platforms folder from Windows, you can craft a shell script to set the execute bits on these files and include it as a part of your build process. There is also a [**Cordova hook based version of this script**](https://github.com/Microsoft/cordova-docs/tree/master/tips-and-workarounds/ios/osx-set-execute) available in the tips and workarounds section. + 2. If you absolutely must check in the contents of the platforms folder from Windows, you can craft a shell script to set the execute bits on these files and include it as a part of your build process. There is also a [**Cordova hook based version of this script**](../tips-and-workarounds/ios/osx-set-execute) available in the tips and workarounds section. 1. Create a shell script called "set-execute.sh" with the following contents: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/tutorial-team-build/TFS2013.md b/tutorial-team-build/TFS2013.md index 1a953008..000d6fb4 100644 --- a/tutorial-team-build/TFS2013.md +++ b/tutorial-team-build/TFS2013.md @@ -183,7 +183,7 @@ In addition to your other build definition settings, you will want to use the fo | **Process =\> Advanced =\> MSBuild Arguments** | Indicates the type of build to create: emulator or device. | **/p:DebuggerFlavor=PhoneDevice** | ## More Information -* [Learn about other Team Build / CI options](README.md) +* [Learn about other Team Build / CI options](./README.md) * [Read tutorials and learn about tips, tricks, and known issues](../Readme.md) * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) diff --git a/tutorial-team-build/TFS2015.md b/tutorial-team-build/TFS2015.md index b41eee81..6140d6ba 100644 --- a/tutorial-team-build/TFS2015.md +++ b/tutorial-team-build/TFS2015.md @@ -128,7 +128,7 @@ You are now all set! You can configure either of these build definitions further **Troubleshooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](./README.md) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. ## More Information -* [Learn about other Team Build / CI options](README.md) +* [Learn about other Team Build / CI options](./README.md) * [Read tutorials and learn about tips, tricks, and known issues](../Readme.md) * [Download samples from our Cordova Samples repository](http://github.com/Microsoft/cordova-samples) * [Follow us on Twitter](https://twitter.com/VSCordovaTools) From 01d79f1baad3d9f494397c3dab42ec2beedb3210 Mon Sep 17 00:00:00 2001 From: "clantz@microsoft.com" Date: Fri, 10 Jul 2015 15:19:58 -0700 Subject: [PATCH 04/17] Updated TypeScript guidence --- tutorial-gulp/gulp-typescript.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/tutorial-gulp/gulp-typescript.md b/tutorial-gulp/gulp-typescript.md index d783b18e..9d043089 100644 --- a/tutorial-gulp/gulp-typescript.md +++ b/tutorial-gulp/gulp-typescript.md @@ -44,8 +44,26 @@ See the ["Using Gulp to Build Cordova Projects" tutorial](http://go.microsoft.co .pipe(gulp.dest("www/scripts")); }); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + You could also instead use a tsconfig.json file (like the default VS template) and add the following instead: + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + var ts = require("gulp-typescript"), + fs = require("fs"), + tsconfigPath = "scripts/tsconfig.json"; + + gulp.task("scripts", function () { + // Compile TypeScript code + if (fs.existsSync(tsconfigPath)) { + gulp.src("scripts/**/*.ts") + .pipe(ts(ts.createProject(tsconfigPath))) + .pipe(gulp.dest(".")); + } + }); - This will compile anything in the “scripts” folder in the root of your Cordova project and copy them as a single JavaScript file called “appBundle.js” under the “www/scripts” folder. You should update this with the location of all of the TypeScript files you want compiled. You can add an array of locations to compile as follows: + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Either of these code snippets will compile anything in the “scripts” folder in the root of your Cordova project and copy them as a single JavaScript file called “appBundle.js” under the “www/scripts” folder. You should update this with the location of all of the TypeScript files you want compiled. You can add an array of locations to compile as follows: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ gulp.src(["scripts/**/*.ts","www/typescript/**/*.ts"]) From 1bfff0ee61b1da516d7c277c9186537ab2dd73c7 Mon Sep 17 00:00:00 2001 From: "clantz@microsoft.com" Date: Mon, 13 Jul 2015 09:13:45 -0700 Subject: [PATCH 05/17] Added links to MSDN tutorials --- Readme.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Readme.md b/Readme.md index ba75f79f..3dbba86f 100644 --- a/Readme.md +++ b/Readme.md @@ -16,6 +16,10 @@ This repository contains a set of documents and tutorials for the **Visual Studi 1. [Getting Started with Cordova & TFS 2013](./tutorial-team-build/TFS2013.md) 1. [Getting Started with Cordova & Jenkins CI](./tutorial-team-build/Jenkins.md) 1. [Package & Publish your Cordova Applications](./tutorial-package-publish) +1. [Build and Simulate iOS in the Cloud](http://go.microsoft.com/fwlink/?LinkID=618476) (MSDN) +1. [Build a Cordova app for iOS using Parallels](http://go.microsoft.com/fwlink/?LinkID=618477) (MSDN) +1. [Run the Android Emulator on OSX when using Windows in Parallels](http://go.microsoft.com/fwlink/?LinkID=618478) (MSDN) +1. [Convert a Cordova Project to a PhoneGap Project](http://go.microsoft.com/fwlink/?LinkID=618479) (MSDN) ## Tips & Workarounds From 4152cce707fd5fa6db0d8d9dedb56d53cec47565 Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Mon, 13 Jul 2015 09:19:01 -0700 Subject: [PATCH 06/17] Corrected typo --- Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Readme.md b/Readme.md index 3dbba86f..4734b958 100644 --- a/Readme.md +++ b/Readme.md @@ -10,7 +10,7 @@ This repository contains a set of documents and tutorials for the **Visual Studi 1. [Using Gulp with your Cordova projects](./tutorial-gulp) 1. [Using Gulp to Build Cordova Projects](./tutorial-gulp/gulp-ci.md) 1. [Invoking Gulp Tasks During a Cordova Build and the VS Task Runner Explorer](./tutorial-gulp/gulp-task-runner-explorer.md) - 1. [Compiling TypeScript wit Gulp](./tutorial-gulp/gulp-typescript.md) + 1. [Compiling TypeScript with Gulp](./tutorial-gulp/gulp-typescript.md) 1. [Building Cordova Apps in a Team / Continuous Integration (CI) Environment](./tutorial-team-build) 1. [Getting Started with Cordova & TFS 2015 or Visual Studio Online](./tutorial-team-build/TFS2015.md) 1. [Getting Started with Cordova & TFS 2013](./tutorial-team-build/TFS2013.md) From e5b4d1c546a84fdc94e66404810d0d4e2f81dd12 Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Mon, 13 Jul 2015 09:22:25 -0700 Subject: [PATCH 07/17] Update gulp-typescript.md --- tutorial-gulp/gulp-typescript.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tutorial-gulp/gulp-typescript.md b/tutorial-gulp/gulp-typescript.md index 9d043089..4571a715 100644 --- a/tutorial-gulp/gulp-typescript.md +++ b/tutorial-gulp/gulp-typescript.md @@ -45,7 +45,7 @@ See the ["Using Gulp to Build Cordova Projects" tutorial](http://go.microsoft.co }); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - You could also instead use a tsconfig.json file (like the default VS template) and add the following instead: + You could also use a tsconfig.json file (like the default VS template) and add the following instead: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var ts = require("gulp-typescript"), @@ -102,4 +102,4 @@ gulp watch * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) * [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) -* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file +* [Email us your questions](mailto:/vscordovatools@microsoft.com) From 994f604a680d36a8707f7bcc54efa353cfb64d9e Mon Sep 17 00:00:00 2001 From: "clantz@microsoft.com" Date: Mon, 13 Jul 2015 11:14:45 -0700 Subject: [PATCH 08/17] Added in short term fix for Ant until VSO gets Cordova cached (which will be a bit off of RTM) --- tutorial-team-build/TFS2015.md | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/tutorial-team-build/TFS2015.md b/tutorial-team-build/TFS2015.md index 6140d6ba..a6b74030 100644 --- a/tutorial-team-build/TFS2015.md +++ b/tutorial-team-build/TFS2015.md @@ -22,7 +22,9 @@ Since the build process we will describe here is not directly dependent on MSBui **Troubleshooting Tip:** See ["Internet Access & Proxy Setup" in the general CI tutorial](./README.md) if your build servers have limited Internet connectivity or require routing traffic through a proxy. ###Visual Studio Online -As of this writing, you can build Cordova apps targeting Android, Windows, and Windows Phone using the Hosted Agent Pool in Visual Studio Online. This allows you to build without setting up a Windows build agent on premise. iOS builds are not yet available. When using the Hosted Agent Pool in Visual Studio Online (VSO), all pre-requisites will already be installed and Node.js will be in your path. +As of this writing, you can build Cordova apps targeting Android, Windows, and Windows Phone using the Hosted Agent Pool in Visual Studio Online. This allows you to build without setting up a Windows build agent on premise. iOS builds are not yet available though you can use the VSO Cross-Platform Build agent with Visual Studio Online (see below). + +In the near very future, all Cordova pre-requisites will already be installed and configured when using the Hosted Agent Pool in Visual Studio Online (VSO). This update will also improve the performance of Cordova builds in Visual Studio Online. However, in the short term you may need to add Ant into the path when using Cordova versions lower than 5.0.0. See [Short Term Workaround: VSO and Ant](#vso-ant) for details if you encounter an error about Ant not being in the path. You can skip this if you do not encounter an Ant related build error. ####Meet the VSO Cross-Platform Build Agent Since it is a new capability, let's pause and briefly highlight the new TFS [cross-platform build agent](http://go.microsoft.com/fwlink/?LinkID=533789) we will be using in this tutorial for building iOS on OSX since setup is different than traditional TFS build agents. The agent is a Node.js based service that uses a HTTPS connection to your TFS 2015 server to fetch work. As a result, your OSX machine only needs to have HTTP access to your TFS instance but not the other way around. This makes setup and configuration quite simple. The agent is for use with TFS 2015 and Visual Studio Online's [next generation build system](http://go.microsoft.com/fwlink/?LinkID=533772), not the legacy XAML/MSBuild based system. @@ -47,7 +49,7 @@ The following will also need to be in your path: - **Node.js** should already be in your path on OSX simply by the fact that you've setup the cross-platform build agent, but if it is not in your path on Windows you will want to be sure it is configured for use. The default location of Node.js on Windows is **%PROGRAMFILES(x86)%\nodejs**. - **%ANT_HOME%\bin** should be added to your path if you are using a version of Cordova < 5.0.0 or have specified the "--ant" build option -When using the Hosted Agent Pool in Visual Studio Online (VSO), all pre-requisites will already be installed and these environment variables will be set. +In the near very future, all Cordova pre-requisites will already be installed and configured when using the Hosted Agent Pool in Visual Studio Online (VSO). This update will also improve the performance of builds in Visual Studio Online. However, in the short term you may need to add Ant into the path when using Cordova versions lower than 5.0.0. See [Short Term Workaround: VSO and Ant](#vso-ant) for details if you encounter an error about Ant not being in the path. ##Project Setup & Build Definitions ###Adding Gulp to Your Project @@ -127,6 +129,34 @@ You are now all set! You can configure either of these build definitions further **Troubleshooting Tip:** See ["Troubleshooting Tips for Building on OSX" in the general CI tutorial](./README.md) for tips on resolving common build errors that can occur when building Cordova projects on that operating system. + +## Short Term Workaround: VSO and Ant +In the near very future, all Cordova pre-requisites will already be installed and configured when using the Hosted Agent Pool in Visual Studio Online (VSO). This update will also improve the performance of Cordova builds in Visual Studio Online. However, in the short term you may need to add Ant into the path when using Cordova versions lower than 5.0.0. + +Follow these instructions if you encounter an error about Ant not being in the path when you build your Cordova app in VSO. Note that you can skip these steps if you do not encounter an Ant build error. + +1. Create a batch file called "setenv.cmd" and place it in a solution folder with the following contents: + + ~~~~~~~~~~~~~~~~~~~~~~~~~~ + @SET PATH=%PATH%;%ANT_HOME%\bin + ~~~~~~~~~~~~~~~~~~~~~~~~~~ + +2. Check this into source control with the rest of your project. + + ![setenv.cmd in solution]() + +3. Next, under the "Build" tab in your Windows Build Definition, add a new build step, select **Batch Script** from the **Utility** category, and enter the following settings: + + - **Path:** setenv.cmd + - **Modify Environment:** Checked. + +4. Make this the first build step in your build definition. + + ![Windows Build Definition - setenv.cmd]() + +You are now ready to go in VSO! + + ## More Information * [Learn about other Team Build / CI options](./README.md) * [Read tutorials and learn about tips, tricks, and known issues](../Readme.md) From a18726309ab576eb757020be331f99ae9f538c3c Mon Sep 17 00:00:00 2001 From: subhagpo Date: Mon, 13 Jul 2015 17:42:31 -0700 Subject: [PATCH 09/17] Adding image with build.json and updating the document for packaging instructions. --- cordova-docs-private | 1 + tutorial-package-publish/README.md | 26 ++++++++++++++++-- .../media/android_assets_cordova5.png | Bin 0 -> 35389 bytes 3 files changed, 24 insertions(+), 3 deletions(-) create mode 160000 cordova-docs-private create mode 100644 tutorial-package-publish/media/android_assets_cordova5.png diff --git a/cordova-docs-private b/cordova-docs-private new file mode 160000 index 00000000..faf2438d --- /dev/null +++ b/cordova-docs-private @@ -0,0 +1 @@ +Subproject commit faf2438d8c71c55bf5d683938bac73e9f0d55827 diff --git a/tutorial-package-publish/README.md b/tutorial-package-publish/README.md index ee10f71a..d117bcdd 100644 --- a/tutorial-package-publish/README.md +++ b/tutorial-package-publish/README.md @@ -24,9 +24,14 @@ The wizard guides you through a workflow that is similar to the workflow for cre Once you are ready to package your application for android, change the platform to the android platform, the build configuration to release and select ‘device’ as debug target as shown in the figure below: ![Android: Debug Target]() -If you initiate a build with this configuration, VS builds an unsigned release package that can be deployed to a machine but cannot be published to store. In order to create a release signed package, you need to provide keystore information to the build in the ant.properties file under res\native\android. A keystore is a binary file that contains a set of private keys. You must keep your keystore in a safe and secure place. +If you initiate a build with this configuration, VS builds an unsigned release package that can be deployed to a machine but cannot be published to store. + +**Cordova CLI verions < 5.0**, use ANT to build android applications. In order to create a release signed package, you need to provide keystore information to the build in the ant.properties file under res\native\android. A keystore is a binary file that contains a set of private keys. You must keep your keystore in a safe and secure place. ![Android: Build assets]() +**Cordova CLI verions > 5.0**, use GRADLE to build android applications. In order to create a release signed package, you need to provide keystore information to the build in the build.json file under the project root. A keystore is a binary file that contains a set of private keys. You must keep your keystore in a safe and secure place. +![Android: Build assets]() + You can either provide information about existing key-store or create a new one. Here I am going to explain how you can create a new key-store using standard tools from the Android SDK and the JDK: 1. Open a new admin command prompt. @@ -63,7 +68,7 @@ Running the above command, prompts you for passwords for the keystore and key, a ``` 4. It then generates the keystore as a file called **my-release-key.keystore** under *c:\* drive. The keystore contains a single key, valid for 10000 days. -5. Edit the **ant.properties in res\native\android** with the information for the keystore: +5. For Cordova CLI verions < 5.0, edit the **ant.properties in res\native\android** with the information for the keystore: ``` key.store=c:\\my-release-key.keystore @@ -71,8 +76,23 @@ Running the above command, prompts you for passwords for the keystore and key, a key.store.password= pwd123 key.alias.password= pwd123 ``` + For Cordova CLI verions > 5.0, edit the **build.json in the project root** with the information for the keystore: + + ``` + { + "android": { + "release": { + "keystore":"c:\\my-release-key.keystore" + "storePassword":"pwd123" + "alias":"johnS" + "password":"pwd123" + "keystoreType":"" + } + } + } + ``` -After you have edited ant.properties with the keystore information, building the app for release configuration, results in a release signed APK package at \bin\Android\Release. Once your app is ready for publishing, you can upload this app on Google play by signing into your [Google play developer console](https://play.google.com/apps/publish/). Please refer to [Launch Checklist for Google Play](http://developer.android.com/distribute/tools/launch-checklist.html) for successful publication of you app. +After you have edited the appropriate file with the keystore information, building the app for release configuration, results in a release signed APK package at \bin\Android\Release. Once your app is ready for publishing, you can upload this app on Google play by signing into your [Google play developer console](https://play.google.com/apps/publish/). Please refer to [Launch Checklist for Google Play](http://developer.android.com/distribute/tools/launch-checklist.html) for successful publication of you app. ### iOS: diff --git a/tutorial-package-publish/media/android_assets_cordova5.png b/tutorial-package-publish/media/android_assets_cordova5.png new file mode 100644 index 0000000000000000000000000000000000000000..e00ea42566b605ab13d7673f98d6afcc162c8d78 GIT binary patch literal 35389 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�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 6>PbMJSy|5WYX6|b4wDmi^ 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

a_LHVb6xeM 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 AYybcN literal 0 HcmV?d00001 From 31fa812aa41442eaf52007a90f481c83c4be552d Mon Sep 17 00:00:00 2001 From: "clantz@microsoft.com" Date: Tue, 14 Jul 2015 08:37:23 -0700 Subject: [PATCH 10/17] Updated Gulp tutorials to include the "Dependencies" node in the solution explorer --- tutorial-gulp/gulp-ci.md | 6 +++++- tutorial-gulp/gulp-task-runner-explorer.md | 6 +++++- tutorial-gulp/gulp-typescript.md | 4 ++++ tutorial-gulp/media/gulp-4.png | Bin 0 -> 6651 bytes 4 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 tutorial-gulp/media/gulp-4.png diff --git a/tutorial-gulp/gulp-ci.md b/tutorial-gulp/gulp-ci.md index 2979e995..a6f46f23 100644 --- a/tutorial-gulp/gulp-ci.md +++ b/tutorial-gulp/gulp-ci.md @@ -46,10 +46,14 @@ gulp The "npm install -g gulp" command will install the Gulp command line interface and add it to your path while the "npm install" command will install the "devDepenencies" listed above in a node_modules folder for use in your gulp script. These two commands are only required if you need to install new dependencies that were added to package.json by hand or are installing Gulp globally for the first time. -You can also quickly execute Gulp tasks from the Task Runner Explorer right from Visual Studio. Simply go to View \> Other Windows \> Task Runner Explorer to bring it up for use. Even better, any dependencies you add to package.json will automatically be installed locally for use when you save the file. +You can also quickly execute Gulp tasks from the Task Runner Explorer right from Visual Studio. Simply go to View \> Other Windows \> Task Runner Explorer to bring it up for use. ![View Menu]() +Even better, all you need to do to install dependencies you add to package.json is to right-click on the Dependencies node in the Solution Explorer and select "Restore Packages". + +![Restore Packages]() + Note that the **"cordova" and "cordova-lib" npm package version numbers do not match for CLI 3.6.3 or earlier**. If you need to target these older Cordova versions, you can instead reference the "cordova" npm package in your package.json file and edit the require statement in the above Gulp script as follows: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/tutorial-gulp/gulp-task-runner-explorer.md b/tutorial-gulp/gulp-task-runner-explorer.md index 327f6b24..e2ac61ee 100644 --- a/tutorial-gulp/gulp-task-runner-explorer.md +++ b/tutorial-gulp/gulp-task-runner-explorer.md @@ -24,7 +24,11 @@ Next, create a [package.json](http://go.microsoft.com/fwlink/?LinkID=533781) fil } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Visual Studio will **automatically** execute the following command for you on save if you're editing package.json in VS, but if you're updating package.json outside of VS, type the following to install whatever you have added to package.json: +You can install these dependencies in Visual Studio by right-clicking on the Dependencies node in the Solution Explorer and selecting "Restore Packages". + +![Restore Packages]() + +If you're updating package.json outside of VS, type the following to install whatever you have added to package.json: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ npm install diff --git a/tutorial-gulp/gulp-typescript.md b/tutorial-gulp/gulp-typescript.md index 4571a715..6bb64625 100644 --- a/tutorial-gulp/gulp-typescript.md +++ b/tutorial-gulp/gulp-typescript.md @@ -25,6 +25,10 @@ See the ["Using Gulp to Build Cordova Projects" tutorial](http://go.microsoft.co } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + You can also manually edit package.json from Visual Studio and then install the dependency by right-clicking on the Dependency node in the Solution Explorer and selecting "Restore Packages." + + ![Restore Packages]() + 2. Add the following task to gulpfile.js: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/tutorial-gulp/media/gulp-4.png b/tutorial-gulp/media/gulp-4.png new file mode 100644 index 0000000000000000000000000000000000000000..ad7008c5e8f7b9897198042082b86ab63a09b066 GIT binary patch literal 6651 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 literal 0 HcmV?d00001 From 9c72120707d4e8d843978e929cee823ec2ca3feb Mon Sep 17 00:00:00 2001 From: "clantz@microsoft.com" Date: Tue, 14 Jul 2015 13:38:09 -0700 Subject: [PATCH 11/17] Updated details on new npm registry in Cordova 5 tutorial --- tutorial-cordova-5/README.md | 12 +++++------- tutorial-cordova-5/media/cordova-5-9.png | Bin 0 -> 84717 bytes 2 files changed, 5 insertions(+), 7 deletions(-) create mode 100644 tutorial-cordova-5/media/cordova-5-9.png diff --git a/tutorial-cordova-5/README.md b/tutorial-cordova-5/README.md index 63b5d522..f0c37353 100644 --- a/tutorial-cordova-5/README.md +++ b/tutorial-cordova-5/README.md @@ -137,16 +137,14 @@ As a result, core plugins like Camera have changed from [org.apache.cordova.came You can find running list of [old verses new plugin IDs in this location](http://go.microsoft.com/fwlink/?LinkID=617674). You will be informed of the new ID whenever you add a plugin from this list when either using the command line or the config.xml designer. The config.xml designer will automatically add these new IDs for Cordova 5.0.0+ and the old IDs for older versions of Cordova that do not support them. ###Cordova Plugin Registry -Unfortunately the community is in a state of flux when it comes to a "source of truth" for all available Cordova plugins. +As of 7/14/2015, plugins.cordova.io now has two registry sections: -- For the time being, [plugins.cordova.io](http://plugins.cordova.io) **does not contain npm sourced plugins.** -- For npm sourced plugins, you should instead search npm using the [ecosystem:cordova](http://go.microsoft.com/fwlink/?LinkID=617675) tag. +- For the time being, the landing page of [plugins.cordova.io](http://go.microsoft.com/fwlink/?LinkID=618599) **does not contain npm sourced plugins** since these will work with any version of Cordova. +- However, npm sourced plugins can be found on the **new [npm registry section of plugins.cordova.io](http://go.microsoft.com/fwlink/?LinkID=618600)** or you can search npm iself using the [ecosystem:cordova](http://go.microsoft.com/fwlink/?LinkID=617675) tag. - ![Custom Local Plugin]() + ![Npm Plugin Registry]() -Both sets of plugins can be used with Cordova 5.0.0+ so in the short term you should search in both locations for plugins. Plugins found in npm are the most likely to work without issue with Cordova 5.0.0 and higher and may or may not work with earlier versions of Cordova. Npm will be the eventual source of truth, but things are a bit messy during this transition period. - -We are actively working with the community on the best way to merge some of the functionality of the existing plugins.cordova.io site with the reliability and improvements npm provides. +Both sets of plugins can be used with Cordova 5.0.0+ so in the short term you may need to search in both locations for plugins. Plugins found in npm are the most likely to work without issue with Cordova 5.0.0 and higher and may or may not work with earlier versions of Cordova. Npm will be the eventual source of truth, but things are still in a transition period. ###Cordova 3.x and 4.x Don't Support Npm as a Plugin Source diff --git a/tutorial-cordova-5/media/cordova-5-9.png b/tutorial-cordova-5/media/cordova-5-9.png new file mode 100644 index 0000000000000000000000000000000000000000..bc70e433ab2e109a5a217901e32782dc9bde7eff GIT binary patch literal 84717 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 Date: Wed, 15 Jul 2015 12:02:28 -0700 Subject: [PATCH 12/17] Moved Task Runner Explorer Binding hook to a separate section --- tutorial-gulp/gulp-task-runner-explorer.md | 137 +----------------- .../hook-task-runner-binding/LICENSE | 7 + .../hook-task-runner-binding/README.md | 74 ++++++++++ .../hook-task-runner-binding.js | 94 ++++++++++++ 4 files changed, 178 insertions(+), 134 deletions(-) create mode 100644 tutorial-gulp/hook-task-runner-binding/LICENSE create mode 100644 tutorial-gulp/hook-task-runner-binding/README.md create mode 100644 tutorial-gulp/hook-task-runner-binding/hook-task-runner-binding.js diff --git a/tutorial-gulp/gulp-task-runner-explorer.md b/tutorial-gulp/gulp-task-runner-explorer.md index e2ac61ee..7c3fc300 100644 --- a/tutorial-gulp/gulp-task-runner-explorer.md +++ b/tutorial-gulp/gulp-task-runner-explorer.md @@ -63,141 +63,10 @@ Now to attach this to the "Before Build" event, right click and select Bindings The next time you run a build this task will automatically fire! -###Supporting the Gulp Task Runner Explorer from Command Line Builds -If you want to be able to use the "Before Build" and "After Build" event bindings **outside** of Visual Studio (say from the Cordova CLI itself) you may install the sample [Visual Studio Tools for Apache Cordova CLI Support Plugin](http://go.microsoft.com/fwlink/?LinkID=533753). This plugin works by wiring the "Before Build" event to "Before Prepare" in Cordova and "After Build" to "After Compile" when building outside of Visual Studio. **Note that currently this plugin only supports bindings in gulpfile.js in the root of your project.** - -1. Open your project in Visual Studio -2. Double click on config.xml in your project -3. Select the "Plugins" tab -4. Select "Custom" and choose "Git" -5. Enter the following URI: https://github.com/Chuxel/taco-cordova-support-plugin.git -6. Click "Add" - -See the [plugin Git repository](http://go.microsoft.com/fwlink/?LinkID=533753) for additional information. We will cover a simplified version of what this plugin does behind the scenes in the next section. - -###Behind the Scenes: Gulp Task Cordova Hook -If you are looking for a quick way to add in support for firing Grunt tasks for Cordova build events outside of Visual Studio, consider using the sample [Visual Studio Tools for Apache Cordova CLI Support Plugin](http://go.microsoft.com/fwlink/?LinkID=533753). However, if you would prefer not to tie the implementation to the binding format used by the VS Task Runner Explorer, you can easily wire in your own Cordova hook using a similar technique. - -Hooks can be implemented in a number of different ways: shell scripts, Node.js scripts, or Node modules. Fortunately, the code to call a Gulp task from a hook is trivial. In this example we'll use a Node.js module since it can run on both Windows and OSX and has less overhead than starting up a shell script. - -1. Run the following commands in the command line from the root of your project. We'll automate this away next. - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - npm install gulp - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -2. Create a file called "hook-gulp.js" in a new "hooks" folder in your Cordova project (or any other location you would prefer) -3. Place the following code in it: - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - module.exports = function (context) { - - var Q = context.requireCordovaModule("q"), - fork = require("child_process").fork; - - // Use the gulp node module to execute the task and return a promise - var deferred = Q.defer(); - var child = fork("./node_modules/gulp/bin/gulp.js", context.hook); - child.on("error", function (err) { - deferred.reject(err); - }); - child.on("exit", function (code, signal) { - if (code === 0 && signal === null) { - deferred.resolve(); - } else { - deferred.reject("Non-zero exit code or signal."); - } - }); - return deferred.promise; - } - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - This code simply looks at the "context" object that is passed into Cordova hook modules for the name of the hook event currently firing and then invokes a Gulp task of that same name via by "[forking](http://go.microsoft.com/fwlink/?LinkID=533804)" the Gulp node module. Since this is done asynchronously, a promise is returned to Cordova. -4. Add the following XML element to config.xml in your Cordova project. In Visual Studio you can do this using Right-Click \> View Code. - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - You can wire Gulp tasks to any number of valid Cordova [hook events](http://go.microsoft.com/fwlink/?LinkID=533744) by simply adding additional hook elements to config.xml and replacing "before\_prepare" with the event you want to wire into. -5. Create a file called "gulpfile.js" and put it in the root of your Cordova project with the following in it: - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - var gulp = require("gulp"); - gulp.task("before_prepare", function() { - // Add anything you want to do before the build here - }); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - As with step 4, you can add a Gulp task for each hook event you want to wire into Gulp. -6. Now run a Cordova build and try it out! - -#### Automating Dependency Installation for our Task Runner Cordova Hook -At this point, anything you add to the "before\_prepare" Gulp task will be fired off on each build. It is really common to want to use other node modules in a Gulp task particularly in the form of plugins. You can install these manually, but let's take the next step and automate installation of Gulp and any other node modules you may want to use. - -1. Create a "package.json" file in the root of your project and place the following in it: - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - { - "devDependencies": { - "gulp": "latest" - } - } - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -2. Update "hook-gulp.js" as follows: - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - module.exports = function (context) { - var Q = context.requireCordovaModule("q"), - fs = require("fs"), - path = require("path"), - fork = require("child_process").fork, - exec = Q.nfbind(require("child_process").exec); - - // Check to see if Gulp is installed and if not use "npm install" to - // install the contents of package.json in the node_modules folder - if (!fs.existsSync(path.join(process.cwd(), "node_modules", "gulp"))) { - console.log("Gulp not found. Installing package dependencies.") - return exec("npm install").then(function (result) { - console.log(result[0]); - if (result[1] != "") { - console.error(result[1]); - } - }) - .then(function () { return runGulpTask(context.hook); }); - } else { - return runGulpTask(context.hook); - } - - function runGulpTask(hook) { - // Use the gulp node module to execute the task and return a promise - var deferred = Q.defer(); - var child = fork("./node_modules/gulp/bin/gulp.js", hook); - child.on("error", function (err) { - deferred.reject(err); - }); - child.on("exit", function (code, signal) { - if (code === 0 && signal === null) { - deferred.resolve(); - } else { - deferred.reject("Non-zero exit code or signal."); - } - }); - return deferred.promise; - } - } - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - This will then first check to see if Gulp is already installed and if not install everything you have in package.json automatically by executing the "npm install" command from the root of your project. Either way it calls the task matching the Cordova hook event. - -3. Now run a Cordova build and try it out! - -#### Adding Other Dependencies -Adding additional dependencies is simple from Visual Studio. VS will also **automaticlly** install any package added to the "devDependencies" list in package.json when you save the file. - -You can also install any additional dependencies and update package.json using the "--save" flag when calling "npm install" from the command line. For example, this command will add the [uglify Gulp plugin](http://go.microsoft.com/fwlink/?LinkID=533793) as a dependency: +##Supporting Task Runner Explorer Bindings from the Command Line +By default, bindings in the Task Runner Explorer only work inside of Visual Studio. When working outside of Visual Studio we generally recommend simply running the Gulp tasks directly from the command line. However, you may want to be able to simply assign bindings in Visual Studio and have them apply from builds at the command line or in a team / Continuous Integration (CI) environment. Fortunately this is fairly straight forward to do via a [Cordova "hook"](http://go.microsoft.com/fwlink/?LinkID=533744). -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -npm install --save-dev gulp-uglify -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +To do so, **[follow these directions to add a pre-built Cordova hook to your project](./hook-task-runner-binding)**. You can then modify it as you see fit to meet your needs. ## More Information * [Learn more about using Gulp with your Cordova projects](README.md) diff --git a/tutorial-gulp/hook-task-runner-binding/LICENSE b/tutorial-gulp/hook-task-runner-binding/LICENSE new file mode 100644 index 00000000..80649e7c --- /dev/null +++ b/tutorial-gulp/hook-task-runner-binding/LICENSE @@ -0,0 +1,7 @@ +Copyright (c) Microsoft Corporation + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/tutorial-gulp/hook-task-runner-binding/README.md b/tutorial-gulp/hook-task-runner-binding/README.md new file mode 100644 index 00000000..f4f24fbe --- /dev/null +++ b/tutorial-gulp/hook-task-runner-binding/README.md @@ -0,0 +1,74 @@ +#Cordova Hook to Execute VS Task Runner Explorer Bindings from the Command Line + +License: MIT + +Use this hook if you want to be able to use the "Before Build" and "After Build" event bindings **outside** of Visual Studio (say from the Cordova CLI itself or during a CI build). It wires in the "Before Build" binding in the Task Runner Explorer to "Before Prepare" in Cordova and "After Build" in the Task Runner Explorer to "After Compile" in Cordova. **Note that currently this hook only supports bindings in gulpfile.js in the root of your project.** + +To install it: + +1. Grab the js file and drop it a "hooks" folder in your project root +2. Update config.xml with the following: + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + + + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +##Using the Visual Studio 2015 Task Runner Explorer +The Visual Studio Task Runner Explorer allows users to tie Gulp tasks to specific build events. To use the Task Runner Explorer: + +1. Go to View > Other Windows > Task Runner Explorer +2. You will now see any gulpfiles you have in your project. (Hit the refresh icon if you added one after opening the window.) +3. To bind a task to an event, right click on the task, go to Bindings, and select the event you want + +**Note: The hook currently only works if "gulpfile.js" is in the root of the project. In addition, Clean and ProjectOpened do not have direct analogs in the Cordova CLI and are currently ignored.** + +This results in a comment being added to gulpfile.js with the bindings. Ex: +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +/// +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The config.xml elements above will map the BeforeBuild task into the Cordova CLI before\_prepare event and the AfterBuild task to the Cordova CLI after\_compile event. These same events are fired by the cordova "build" command which combines "prepare" and "compile" in one comand while still allowing each of these commands to function separatley. + +While not supported via Visual Studio UI, you can wire in Gulp tasks to additiona Cordova hooks by simply using the hook name using the syntax above. Ex: +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +/// +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The hook also automatically detects if Gulp is not installed in the node_modules folder in your project and will "npm install" the contents of package.json in your project to further streamline development. + +## Terms of Use +By downloading and running this project, you agree to the license terms of the third party application software, Microsoft products, and components to be installed. + +The third party software and products are provided to you by third parties. You are responsible for reading and accepting the relevant license terms for all software that will be installed. Microsoft grants you no rights to third party software. + + +## License +Unless otherwise mentioned, the code samples are released under the MIT license. + +``` +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +``` + diff --git a/tutorial-gulp/hook-task-runner-binding/hook-task-runner-binding.js b/tutorial-gulp/hook-task-runner-binding/hook-task-runner-binding.js new file mode 100644 index 00000000..1ca301c0 --- /dev/null +++ b/tutorial-gulp/hook-task-runner-binding/hook-task-runner-binding.js @@ -0,0 +1,94 @@ +/* + Copyright (c) Microsoft. All rights reserved. + Licensed under the MIT license. See LICENSE file in the project root for full license information. +*/ + +var exec, fork, fs, path, Q, hookTasks; + +module.exports = function (context) { + + // Skip processing if being called from within Visual Studio + if (process.env["VisualStudioEdition"]) { + return; + } + + fs = require('fs'); + path = require('path'); + Q = context.requireCordovaModule('q'); + exec = Q.nfbind(require('child_process').exec); + fork = require('child_process').fork; + + // Syntax: + /// + + // Check gulpfile.js for tasks to run for this hook + if (fs.existsSync(path.join(process.cwd(), "gulpfile.js"))) { + // Hooktasks should be cached after first execution since its at the module level + if (!hookTasks) { + console.log("Checking gulpfile for tasks to run for Cordova events.") + hookTasks = {}; + var gulpfile = fs.readFileSync("gulpfile.js", "utf8"); + var matches = gulpfile.match(/\/\/\/\s)/ig); + if (matches) { + var bindings = matches[0].split(" "); + bindings.forEach(function (binding) { + binding = binding.replace(/["|']/g, ""); + var bindParts = binding.split("=") + var hook = bindParts[0]; + var task = bindParts[1]; + if (hook.indexOf("_") == -1) { + switch (hook) { + case "BeforeBuild": hook = "before_prepare"; break; + case "AfterBuild": hook = "after_compile"; break; + case "Clean": return; // No cordova clean event + case "ProjectOpened": return; // No cordova project open event + } + } else { + hook = hook.toLowerCase(); + } + if (hookTasks[hook]) { + hookTasks[hook].push(task); + } else { + hookTasks[hook] = [task]; + } + }); + } + } + + if (hookTasks[context.hook]) { + // Install dependencies in package.json if gulp not present - Run the task either way + if (!fs.existsSync(path.join(process.cwd(), "node_modules", "gulp"))) { + console.log("Gulp not found. Installing package dependencies.") + return exec("npm install") + .then(function (result) { + console.log(result[0]); + if (result[1] != "") { + console.error(result[1]); + }; + }) + .then(function () { return runGulpTask(context.hook); }); + } else { + return runGulpTask(context.hook); + } + } + } + + function runGulpTask(hook) { + var deferred = Q.defer(); + console.log("Running gulp task " + hookTasks[hook] + " for Cordova event " + hook); + var child = fork("./node_modules/gulp/bin/gulp.js", hookTasks[hook]); + child.on("error", function (err) { + deferred.reject(err); + }); + child.on("exit", function (code, signal) { + if (code === 0 && signal === null) { + deferred.resolve(); + } else { + deferred.reject("Non-zero exit code or signal. Code: " + code + ", Signal: " + signal); + } + }); + return deferred.promise; + } + +}; + From bcd36ff0e9e5e142004a1c0948d739de41422964 Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Wed, 15 Jul 2015 17:01:28 -0700 Subject: [PATCH 13/17] Added "build once for Windows" step to Win 10 instructions in Cordova 5 tutorial --- tutorial-cordova-5/README.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tutorial-cordova-5/README.md b/tutorial-cordova-5/README.md index f0c37353..7c785bff 100644 --- a/tutorial-cordova-5/README.md +++ b/tutorial-cordova-5/README.md @@ -246,13 +246,17 @@ These improvements mean that the Windows platform now has a flexible model compa You can follow these steps to use Cordova Windows 10 with Visual Studio: -1. Install the [Windows 10 Tools for Visual Studio](http://go.microsoft.com/fwlink/?LinkID=617471) if you have not already. +1. First, install the [Windows 10 Tools for Visual Studio](http://go.microsoft.com/fwlink/?LinkID=617471) if you have not already. -2. In your project, open the config.xml designer by double clicking on config.xml +2. Update your project to Cordova 5.1.1 as described above if you have not already -3. Click on the "Windows" tab +3. Now, **build once for Windows** (we're working to eliminate this step in future) -4. Change the "Windows Target Version" to "Windows 10.0" +4. Next, open the config.xml designer by double clicking on config.xml + +5. Click on the "Windows" tab + +6. Change the "Windows Target Version" to "Windows 10.0" ![Select Cordova Version]() From b884f1e9c71c955c613a0641e6d87e0a67229aab Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Thu, 16 Jul 2015 08:38:40 -0700 Subject: [PATCH 14/17] Updated known issues for iOS, Windows --- known-issues/known-issues-ios.md | 7 +++++-- known-issues/known-issues-windows.md | 21 ++++++++++++++++++++- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/known-issues/known-issues-ios.md b/known-issues/known-issues-ios.md index 51173957..34745d13 100644 --- a/known-issues/known-issues-ios.md +++ b/known-issues/known-issues-ios.md @@ -14,7 +14,7 @@ This article covers [known issues](../Readme.md#knownissues) related to Visual S **Existing vs-mda-remote settings in Visual Studio do not work with the remotebuild agent:** You will need to generate and use a new PIN when setting up Visual Studio to connect to the remotebuild agent for the first time. If you are not using secure mode, turn secure mode on and then off again to cause VS to reinitalize. See [remotebuild installation instructions](http://go.microsoft.com/fwlink/?LinkID=533745) for details. ---------- -**CordovaModuleLoadError from vs-mda-remote:** This error can occur if your ~/.npm folder or some of its contents were created while running as an administrator (sudo). To resolve, run the following commands after installing the latest version of the [vs-mda-remote package](https://www.npmjs.com/package/vs-mda-remote). These commands ensure your user has permissions to the contents of the npm package cache in your home directory when using older versions of Node.js and npm. Newer versions of Node.js and npm will do this for you automatically. +**CordovaModuleLoadError from vs-mda-remote / remotbuild agent:** This error can occur if your ~/.npm folder or some of its contents were created while running as an administrator (sudo). To resolve, run the following commands after installing the latest version of the [vs-mda-remote package](https://www.npmjs.com/package/vs-mda-remote). These commands ensure your user has permissions to the contents of the npm package cache in your home directory when using older versions of Node.js and npm. Newer versions of Node.js and npm will do this for you automatically. sudo npm cache clear sudo chown -R `whoami` ~/.npm @@ -23,11 +23,14 @@ This article covers [known issues](../Readme.md#knownissues) related to Visual S **Slow first build:** The first build using the remote iOS build agent for a given version of Cordova will be slower than subsequent builds as the remote agent must first dynamically acquire Cordova on OSX. ---------- -**Adding "plugins/remote_ios.json" to source control can result in non-functional plugins:** Due to a bug in the VS 2015 RC, four json files that can cause issues if added to source control are missing from the default source code exclusion list including "plugins/remote_ios.json." If you encounter a build that has non-functional Cordova APIs after fetching the project from source control, you should ensure that "plugins/android.json", "plugins/windows.json", "plugins/remote_ios.json", "plugins/wp8.json" are removed from source control and retry. See this [Tips and Workarounds](../tips-and-workarounds/general/README.md#missingexclude) for additional details. +**Adding "plugins/remote_ios.json" to source control can result in non-functional plugins:** Five json files that can cause issues if added to source control are missing from the default source code exclusion list including "plugins/remote_ios.json." If you encounter a build that has non-functional Cordova APIs after fetching the project from source control, you should ensure that "plugins/android.json", "plugins/ios.json", "plugins/windows.json", "plugins/remote_ios.json", "plugins/wp8.json" are removed from source control and retry. See this [Tips and Workarounds](../tips-and-workarounds/general/README.md#missingexclude) for additional details. ---------- **Deploying to iOS 8.3 device fails from OSX Mavericks or below:** If deploying to iOS 8.3 device fails because vs-mda-remote cannot find DeveloperDiskImage.dmg, ensure you are running OSX Yosemite and Xcode 6.3. Xcode 6.3 is required to deploy to an 8.3 device and only runs on Yosemite. +---------- +**Incremental builds not faster than initial build when using VS 2015 RC or RTM:** Unfortunately this is a known issue with the iOS incremental build feature. We are actively working on a fix that will be resolved in a point release update. + ---------- **Unresponsive iOS device during app deployment:** In some circumstances, when deploying to iOS devices, they phone may enter an unresponsive state where apps may stops responding. Avoid deploying an app when the same app is still running. As a workaround, if you enter this state, soft reset your iOS device. diff --git a/known-issues/known-issues-windows.md b/known-issues/known-issues-windows.md index 512fa359..65ddedaa 100644 --- a/known-issues/known-issues-windows.md +++ b/known-issues/known-issues-windows.md @@ -1,6 +1,25 @@ #**Known Issues - Windows** This article covers [known issues](../Readme.md#knownissues) related to Visual Studio Tools for Apache Cordova 2015 when building or deploying to a Windows 8.0, 8.1, Windows Phone 8.1 or any Windows 10 device or emulator. +---------- +**Windows 10 version options and emulators do not appear after installing Windows 10 Tools in Visual Studio 2015 RC or RTM and selecting Cordova 5.1.1 or later:** Due to a bug, you will need to build once for Windows or Windows Phone 8.1 using Cordova 5.1.1 or later for these options to be available. Simply build once and then select Windows 10. We are actively working on a fix. + +---------- +**Version specified in "Windows" section of config designer or during "Create App Packages" wizard not used with Cordova 5.1.1:** Due to a Cordova issue, you will need to update the version number in the "Common" section of the config designer to cause the version number to update properly. We are working with the Cordova community on a fix. + +---------- +**"appxbundle" not generated by "Create App Packages" wizard for Windows or Windows Phone in Visual Studio 2015 RC or earlier:** This issue has been resolved in the RTM version of Visual Studio 2015 by selecting "Always" for the "Generate app bundle" option. For earlier versions you can take advantage of the [MakeAppx command line utiltiy](http://go.microsoft.com/fwlink/?linkid=618904) as follows: + +1. After running the "Create App Packages" wizard, copy your app's ".appx" files from the appropriate AppPackages sub-folders in your project (ignoring the WinJS appx file if present) into a new folder + +2. Open the Visual Studio Developer Command Prompt and go to the folder you placed the appx files + +3. Execute the following command replacing <name> with a name of your choice: + + ~~~~~~~~~~~~~~~~~~~~~~~~ + MakeAppx bundle /d . /p .appxbundle + ~~~~~~~~~~~~~~~~~~~~~~~~ + ---------- **Expired Temporary Certificate:** Due to a coding error, the Cordova Windows platform in Cordova **previous to 4.1.2** has a temporary key in it that expired on 11/11/2014. To work around this issue, update your Cordova version or [download this file](https://git-wip-us.apache.org/repos/asf?p=cordova-windows.git;a=blob;f=template/CordovaApp_TemporaryKey.pfx;h=90d7ab2208ce170d176a2ac8a60eb22fbc1cbf7a;hb=refs/tags/3.7.1) and place it in your Tools for Apache Cordova project in following location: @@ -10,7 +29,7 @@ This article covers [known issues](../Readme.md#knownissues) related to Visual S You can read more about the issue on the [MS Open Tech blog](http://go.microsoft.com/fwlink/?linkid=518810). ---------- -**Incorrect Application Id & Publisher Name after creating app packages in VS 2013:** While trying to associate a Cordova app with Windows store using Visual Studio 13 and CTP3.1, the AppxManifest.xml doesn’t get updated with the appropriate Application Id & publisher name. This has been fixed as of VS 2015 RC. To fix this issue in VS 2013, install the workaround plugin from https://github.com/Chuxel/taco-tricks/tree/master/plugin-windows-package-fix and try building your application again. +**Incorrect Application Id & Publisher Name after creating app packages in VS 2013:** While trying to associate a Cordova app with Windows store using Visual Studio 2013 and CTP3.1, the AppxManifest.xml doesn’t get updated with the appropriate Application Id & publisher name. This has been fixed as of VS 2015 RC. To fix this issue in VS 2013, install the workaround plugin from https://github.com/Chuxel/taco-tricks/tree/master/plugin-windows-package-fix and try building your application again. ---------- ## More Information From d9dcbbd4ce73c2752b10a614dfb9c7cff9563b78 Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Thu, 16 Jul 2015 09:21:44 -0700 Subject: [PATCH 15/17] Added Git URI issue for Cordova 5.1.1 --- known-issues/known-issues-cordova5.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/known-issues/known-issues-cordova5.md b/known-issues/known-issues-cordova5.md index 465a1563..a289cfc0 100644 --- a/known-issues/known-issues-cordova5.md +++ b/known-issues/known-issues-cordova5.md @@ -22,10 +22,15 @@ line or by adding this XML element to config.xml (see [this article for more det ~~~~~~~~~~~~~~~~~ ---------- -**Ripple throws error when starting up Cordova:** Ripple does not function properly in Cordova 5.0.0 due to a newly introduced validation check. This problem was fixed in Cordova 5.1.1. +**Error when adding plugin using Git URI with Cordova 5.1.1:** Cordova 5.1.1 has a bug that can cause plugins installed from a Git repo to fail with the error **Error: EXDEV, cross-device link not permitted** if the project is on a different drive than your temp folder. + +See [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-xml) for information on adding plugins not in the config designer from either the Cordova plugin repository or npm. If you must add a Git version of the plugin, either move your project to the same drive as your temp folder when installing or you can instead download a copy, unzip it, and add the plugin from the filesystem. + +---------- +**Missing Android SDK 22:** The Android platform in Cordova 5.0.0 requires Android SDK API Level 22 which may not be installed on your system. Install the SDK using the Android SDK manager. ---------- -**Missing Android SDK 22:** The Android platform in Cordova 5.0.0 requires Android SDK API Level 22 which is not pre-installed by Visual Studio. Install the SDK using the Android SDK manager. +**Ripple throws error when starting up Cordova 5.0.0:** Ripple does not function properly in Cordova 5.0.0 due to a newly introduced validation check. This problem was fixed in Cordova 5.1.1. ##Apache Cordova 5.x.x and Visual Studio 2015 RC ---------- From b2f2dede16dc60df10d6025b43c882aa6cc1a426 Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Fri, 17 Jul 2015 07:44:15 -0700 Subject: [PATCH 16/17] Updated given day0 delay --- known-issues/known-issues-cordova5.md | 14 +-- known-issues/known-issues-general.md | 42 +++++++-- tutorial-cordova-5/README.md | 106 ++++++++++++----------- tutorial-cordova-5/cordova-5-security.md | 18 ++-- 4 files changed, 109 insertions(+), 71 deletions(-) diff --git a/known-issues/known-issues-cordova5.md b/known-issues/known-issues-cordova5.md index a289cfc0..d0400130 100644 --- a/known-issues/known-issues-cordova5.md +++ b/known-issues/known-issues-cordova5.md @@ -5,6 +5,13 @@ This article covers [known issues](../Readme.md#knownissues) related to Visual S In general we recommend **using Cordova 5.1.1 or above** instead of 5.0.0 as there are a number of issues including a security hole with Cordova 5.0.0. ##Apache Cordova 5.x.x General Issues +---------- +**Old versions of Cordova plugins due to Cordova plugin ID changes:** A significant change occurred with Cordova 5.0.0+ that also altered the IDs of many core Cordova plugins. The Visual Studio 2015 config.xml designer uses the old IDs (ex: org.apache.cordova.camera not cordova-plugin-camera) because Cordova 4.3.1 and below cannot access plugins using these new IDs and the default template uses 4.3.1. + +To install updated plugins, follow [this proceedure to install a npm sourced plugin](../tips-and-workarounds/general/README.md#plugin-npm). + +*Note that these updated plugins were tested on Cordova 5.0.0 or later and therefore may or may not work on earlier versions of Cordova.* We advise against updating your plugins when using older versions of Cordova unless you are attempting to solve a specific problem. + ---------- **Cannot access any network resources from Android app:** The Android platform contained within Cordova 5.0.0+ does not have a "whitelist" plugin installed by default and therefore blocks network access by default. There are now two whitelist plugins that can be installed: @@ -33,13 +40,6 @@ See [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-xml) **Ripple throws error when starting up Cordova 5.0.0:** Ripple does not function properly in Cordova 5.0.0 due to a newly introduced validation check. This problem was fixed in Cordova 5.1.1. ##Apache Cordova 5.x.x and Visual Studio 2015 RC ----------- -**Old versions of Cordova plugins due to Cordova plugin ID changes:** A significant change occurred with Cordova 5.0.0+ that also altered the IDs of many core Cordova plugins. The Visual Studio 2015 RC config.xml designer uses the old IDs (ex: org.apache.cordova.camera not cordova-plugin-camera) because Cordova 4.3.1 and below cannot access plugins using these new IDs and the default template uses 4.3.0. - -To install updated plugins, follow [this proceedure to install a npm sourced plugin](../tips-and-workarounds/general/README.md#plugin-npm). - -*Note that these updated plugins were tested on Cordova 5.0.0 or later and therefore may or may not work on earlier versions of Cordova.* We advise against updating your plugins when using older versions of Cordova unless you are attempting to solve a specific problem. - ---------- **Visual Studio 2015 RC uses Ant to build Android with Cordova 5.x.x:** Visual Studio 2015 RC uses Ant to build Android while the command line has switched to Gradle by default in version 5.0.0 of the CLI. When switching between Visual Studio and the command line with the version of Android in Cordova 5.0.0, you may want to specify that the platform should be built with Ant instead if you are running into unexpected issues. diff --git a/known-issues/known-issues-general.md b/known-issues/known-issues-general.md index 871a02a9..680ef6e2 100644 --- a/known-issues/known-issues-general.md +++ b/known-issues/known-issues-general.md @@ -16,7 +16,7 @@ This article covers general [known issues](../Readme.md#knownissues) related to - plugins/remote_ios.json - plugins/wp8.json. -Remove these files from source control if you are not checking in the "platforms" folder (reccomended). For local copies, you can either fetch a fresh copy from source control or remove the above files along with platforms found in the "platforms" folder to resolve the issue. See [tips and workarounds](../tips-and-workarounds/general/README.md#l#missingexclude) for additional details. +Remove these files from source control if you are not checking in the "platforms" folder (recommended). For local copies, you can either fetch a fresh copy from source control or remove the above files along with platforms found in the "platforms" folder to resolve the issue. See [tips and workarounds](../tips-and-workarounds/general/README.md#l#missingexclude) for additional details. ---------- **Plugin with variables not working:** Due to a Cordova issue with Cordova 4.3.0 and 4.3.1, you can run into problems with plugin variables in Cordova < 5.0.0. Plugin variable information is lost if you install the "plugin" before the "platform" which can happen depending on your workflow. They do, however, function in Cordova 5.1.1 which you can use with VS 2015. Follow these steps to use a plugin with variables: @@ -26,29 +26,59 @@ Remove these files from source control if you are not checking in the "platforms 2. Update to Cordova 5.1.1 via the config designer (Platforms > Cordova CLI) 3. Re-add your plugin via "Plugins" tab in the config.xml designer - + ---------- **Slow first build or first plugin add:** The first build or plugin add for a given version of Cordova will be slower than subsequent builds as VS must first dynamically acquire Cordova. See the Output Window for more detail on progress. Further, the first remote iOS build will exhibit the same behavior as the agent downloads Cordova on your OSX machine. If you encounter a CordovaModuleLoadError with the first iOS build for a given Cordova version you can follow [these instructions](../tips-and-workarounds/ios/README.md#npm-cache) to resolve the problem. +---------- +**Old versions of Cordova plugins due to Cordova plugin ID changes:** A significant change occurred with Cordova 5.0.0+ that also altered the IDs of many core Cordova plugins. The Visual Studio 2015 config.xml designer uses the old IDs (ex: org.apache.cordova.camera not cordova-plugin-camera) because Cordova 4.3.1 and below cannot access plugins using these new IDs and the default template uses 4.3.1. + +To install updated plugins, follow [this proceedure to install a npm sourced plugin](../tips-and-workarounds/general/README.md#plugin-npm). + +*Note that these updated plugins were tested on Cordova 5.0.0 or later and therefore may or may not work on earlier versions of Cordova.* We advise against updating your plugins when using older versions of Cordova unless you are attempting to solve a specific problem. + ---------- **Git sourced plugins will not install:** Git sourced plugins will not install properly if you have not installed the [Git command line tools](http://www.git-scm.com/downloads) and have them in your system path. During installation of the Git tools, select the "Use Git from the Windows Command Prompt" option or add the "bin" folder from the Git install location to your path and restart VS. (Usually "C:\Program Files (x86)\Git\bin"). +---------- +**Git sourced plugins will not install with Cordova 5.1.1 only:** Cordova 5.1.1 has a bug that can cause plugins installed from a Git repo to fail with the error "Error: EXDEV, cross-device link not permitted" if the project is on a different drive than your temp folder. + +See [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-xml) for information on adding plugins not in the config designer from either the Cordova plugin repository or npm. If you must add a Git version of the plugin, either move your project to the same drive as your temp folder when installing or you can instead download a copy, unzip it, and add the plugin from the filesystem. + ---------- **TypeError: Request path contains unescaped characters:** When building or installing a plugin you may encounter this error if you are using a proxy with certain versions of Node.js and Cordova after a "npm http GET". This is a Cordova issue and the simplest workaround is to downgrade [Node.js 0.10.29](http://nodejs.org/dist/v0.10.29/). This will be resolved in a future version of Cordova. See [tips and workarounds](../tips-and-workarounds/general/README.md#cordovaproxy) for additional details. +---------- +**Errors from npm related to permission problems:** If you installed Visual Studio or Node.js running as an administrator, you can run into problems where npm attempts to install npm packages under "C:\Program Files (x86)\node.js". You will typically see errors in the Output Window similar to this one: "npm ERR! error rolling back error : EPERM, unlink 'C:\Program Files (x86)\nodejs\vs-tac-cli.cmd'". To resolve this issue you can re-install Node.js or reconfigured npm using these commands from the command prompt and restarting Visual Studio: + +~~~~~~~~~~~~~~~~~~~~~~~ +npm config set prefix %APPDATA%\npm +npm config set cache %APPDATA%\npm-cache +~~~~~~~~~~~~~~~~~~~~~~~ + +---------- +**Frequent ECONRESET errors from npm when using VPN or proxy:** Node.js can experience intermittent issues connecting to the npm repository via SSL with certain versions of Node.js and npm when connected to VPN or when a proxy is configured. You can resolve this issue by configuring npm to connect to the registry using straight HTTP instead using this command from the command prompt: + +~~~~~~~~~~~~~~~~~~~~~~~ +npm config set registry http://registry.npmjs.org +~~~~~~~~~~~~~~~~~~~~~~~ + ---------- **FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory:** This error can occur if you are using a recent version of Node.js (ex: 0.12.4) due to a [known npm issue](https://github.com/npm/npm/issues/8019). The simplest solution is to downgrade to [Node.js 0.10.29](http://nodejs.org/dist/v0.10.29/). ---------- -**Missing Intellisense:** -- No IntelliSense is provided for Cordova plugins in JavaScript files in Apache Cordova projects. As a workaround, developers can enable IntelliSense for Cordova plugins by explicitly adding “/// <reference group="Implicit (Multi-Device Apps)” />” to the JavaScript file. -- No IntelliSense is provided within JavaScript files for other JavaScript files included via a script tag in a referring HTML page. As a workaround, developers can enable IntelliSense for other referenced JavaScript files by explicitly adding “/// <reference path=”referencedFile.js” />” to the JavaScript file. +**Globally installed npm packages not available from command line:** If you have installed Visual Studio or Node.js with a different user than you are logging into Windows, you may need to update your path to access globally installed (npm install -g) npm packages from the command line. Specifically, ensure **%APPDATA%\npm** is either in your user or system PATH. By default the installation of Node.js will set the PATH as a user environment variable rather than system which is why you can encounter this behavior. ---------- **TypeScript code incorrectly identified as external, cannot read user configuration file:** When using TypeScript, there are known issues that will incorrectly identify project items as external code or will fail to read in a user configuration file. To avoid unexpected behavior when working with a Cordova TypeScript project, turn off Just My Code (Options > Debugger > General > uncheck Enable Just My Code). ---------- -**Globally installed npm packages not available from command line:** If you have installed Visual Studio or Node.js with a different user than you are logging into Windows, you may need to update your path to access globally installed (npm install -g) npm packages from the command line. Specifically, ensure **%APPDATA%\npm** is either in your user or system PATH. By default the installation of Node.js will set the PATH as a user environment variable rather than system which is why you can encounter this behavior. +**TypeScript breakpoints stop at the wrong location when using Ripple:** This is a known issue that is being activley worked. This problem does not occur when using devices or emulators. + +---------- +**Missing Intellisense:** +- No IntelliSense is provided for Cordova plugins in JavaScript files in Apache Cordova projects. As a workaround, developers can enable IntelliSense for Cordova plugins by explicitly adding “/// <reference group="Implicit (Multi-Device Apps)” />” to the JavaScript file. +- No IntelliSense is provided within JavaScript files for other JavaScript files included via a script tag in a referring HTML page. As a workaround, developers can enable IntelliSense for other referenced JavaScript files by explicitly adding “/// <reference path=”referencedFile.js” />” to the JavaScript file. ---------- **"res" folder contents cannot be referenced from web content:** By design, the contents of the “res” folder cannot be accessed by web content as they are copied into platform-specific native project locations. diff --git a/tutorial-cordova-5/README.md b/tutorial-cordova-5/README.md index 7c785bff..5b29e05a 100644 --- a/tutorial-cordova-5/README.md +++ b/tutorial-cordova-5/README.md @@ -1,7 +1,7 @@ #Using Apache Cordova 5 **Note that this documentation applies to Visual Studio 2015 and does not apply to Visual Studio 2013 CTPs.** -Tools for Apache Cordova supports cordova 4.3.1 along with the newly released Cordova 5.1.1 version of cordova. As the major version number increase implies, [Apache Cordova 5](http://http://go.microsoft.com/fwlink/?LinkID=617659) is a departure from 3.x and 4.x versions of Cordova in a number of very important ways. Note that there were a number of issues with Cordova 5.0.0 itself that kept us from recommending its use including an [Android security issue](http://http://go.microsoft.com/fwlink/?LinkID=617658). As a result, we strongly reccomend the use of **Cordova 5.1.1** with **Visual Studio 2015 RTM** and up. +Tools for Apache Cordova RTM has been tested with both Cordova 4.3.1 and Cordova 5.1.1. As the major version number increase implies, [Apache Cordova 5](http://http://go.microsoft.com/fwlink/?LinkID=617659) is a departure from 3.x and 4.x versions of Cordova in a number of very important ways. Note that there were a number of issues with Cordova 5.0.0 itself that kept us from recommending its use including an [Android security issue](http://http://go.microsoft.com/fwlink/?LinkID=617658). As a result, we strongly recommend the use of **Cordova 5.1.1** with **Visual Studio 2015 RTM** and up. This article will summarize the changes in Cordova 5 and how you can take advantage of some of its new features and adapt existing apps. Specifically it will cover: @@ -11,7 +11,7 @@ This article will summarize the changes in Cordova 5 and how you can take advant 1. [Pluggable WebViews and the Crosswalk WebView for Android](#crosswalk) 1. [Windows 10 support and improved Cordova interoperability](#win10) -New projects created using Tools for Apache Cordova will automatically use Cordova 4.3.1. You can switch to this version of Cordova by following these steps: +New projects created using Tools for Apache Cordova will automatically use Cordova 4.3.1. However, you can also update projects to 5.1.1 by following these steps: 1. Double click on config.xml @@ -21,7 +21,7 @@ New projects created using Tools for Apache Cordova will automatically use Cordo ![Select Cordova Version]() -Note that when you build this will **automatically remove any existing contents in the platforms folder in the filesystem**. If you have opted to customize the native project, you should consider migrating your custom assets to the **res/native** folder (ex: res/native/android) which will automatically add the files to the project before preparing the Cordova project to build. +Note that when you build this will **automatically remove any existing contents in the platforms folder in the filesystem**. If you have opted to customize the native project, you should consider migrating your custom assets to the **res/native** folder (ex: res/native/android) which will automatically add the files to the project before preparing the Cordova project to build. However, you will want to exercise care here since **Android in particular has undergone significant revisions in Cordova 5.** The remainder of this article will highlight these updates and cover tips for adapting your existing apps to these changes. @@ -35,9 +35,9 @@ Understanding these differences can be important when reading blog posts or upda - **Cordova CLI 5.1.1** is largely equivalent to Cordova 5.1.1 but is specifically referring to the [Cordova CLI npm package](http://go.microsoft.com/fwlink/?LinkID=617660). - **Platform versions** follow a different numbering scheme. A given Cordova CLI version "pins" a set of platform versions by default since all testing for the release was done using this specific combination of components. The Cordova OSS project does not typically back-test earlier versions of the CLI with newer platforms unless specifically noted in the release notes. You will typically see these platform versions mentioned in a form similar to "Cordova Android 4.0.0". This naming scheme inherits its name from the [cordova-android](http://go.microsoft.com/fwlink/?LinkID=617662) and other similarly named npm packages that are installed when the platform is added to your project. Visual Studio will automatically perfom this "platform add" operation on your behalf but you may notice a version number like this in the Output Window when you build. - - The following Cordova platform versions supported by Tools for Apache Cordova are pinned in **Cordova CLI 5.1.1** (or [see here](http://go.microsoft.com/fwlink/?LinkID=617667) for a complete list): - + + The following Cordova platform are pinned in **Cordova CLI 5.1.1** (or [see here](http://go.microsoft.com/fwlink/?LinkID=617667) for a complete list): + - Cordova Android 4.0.2 - Cordova iOS 3.8.0 - Cordova Windows 4.0.0 @@ -45,38 +45,38 @@ Understanding these differences can be important when reading blog posts or upda Other components are also versioned independantly, but typically you will not be directly exposed to them. It is the release of Cordova Android 4.0.0 that triggered the major version increase for Cordova as a whole given it had a number of breaking changes. Windows 4.0.0 is also a major release that includes Windows 10 support but was designed to not have breaking changes when building for Windows or Windows Phone 8.1. -Note that you can actually add different platform versions to your project for a given CLI version through the use of some XML elements or command line options for edge case scenarios. See the [May 26th, 2015 Android Cordova Platform Security Issue](../tips-and-workarounds/android/security-05-26-2015) article for a specific example of how this works. - +Note that you can actually add different platform versions to your project for a given CLI version through the use of some XML elements or command line options for edge case scenarios. See the [May 26th, 2015 Android Cordova Platform Security Issue](../tips-and-workarounds/android/security-05-26-2015) article for a specific example of how this works. + ##Security Model Changes for Android and iOS One of the more confusing changes about Cordova 5 is that the updated version of the Android platform (also called Cordova Android 4.x) and iOS now follow a different, but more powerful security model designed to provide developers with the tools needed to prevent cross-site scripting attacks among other issues. A critical aspect of this security model is that **absolutely no network access of any kind is allowed without the installation of a Cordova plugin**. -There are a whole host of new security features available and we **strongly reccomend you read the [Introduction to Cordova 5 Security](./cordova-5-security.md) document** for a introduction on them. This article will focus on getting you up and running with the basics. +There are a whole host of new security features available and we **strongly recommend you read the [Introduction to Cordova 5 Security](./cordova-5-security.md) document** for a introduction on them. This article will focus on getting you up and running with the basics. ###The New Whitelist Plugin -The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](http://go.microsoft.com/fwlink/?LinkID=617668) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. For example, adding the following to config.xml resulted in the app not only being able to make XHR calls, access images, or reference remote scripts but also allowed Cordova to navigate to any URI. +The new [Cordova Whitelist plugin (cordova-plugin-whitelist)](http://go.microsoft.com/fwlink/?LinkID=617668) is the recommended base security plugin to use for managing network security access. Historically there was one **access** element in config.xml used to control all access to network resources. The problem with this model is you may want to be able to make an XHR request to a service like Azure Mobile Services without actually allowing your app to navigate to an Azure web page in the same domain. The reason this is a concern is that this remote web page is then given access to all Cordova and plugin APIs. Further, for Android, the access element has been overloaded to control "intents" in the wake of a discovered [security issue in Cordova 3.5.0 and below](http://go.microsoft.com/fwlink/?LinkID=617669) which has led to a syntax that strayed away from the original [W3C Widget spec](http://go.microsoft.com/fwlink/?LinkID=617670) that config.xml's structure is based on. Some restructuring and improvements were therefore appropriate for the Cordova 5.0.0 release. - + As a result, the new whitelist plugin actually introduces three separate elements designed to enable more discrete control. The **access** element returns but only controls where your app can make XHR requests or access other external content from a web page for Android and iOS. It no longer controls whether you can navigate to a different domain. A new **allow-navigation** element has been added that then enables you to specify where the app can navigate instead. Finally, a new **allow-intent** element has been introduced specifically designed to control Android intents. -Projects created using the Cordova CLI contain fairly restrictive rules that are intended to represent a reasonable starting point for most projects. Specifically it: +Projects created using the Tools for Apache Cordova or Cordova CLI itself contain fairly restrictive default rules that are intended to represent a reasonable starting point for most projects. Specifically it: 1. Allows XHR and images to originate from any URL 2. Disallows navigation to external URLs (hosted content) -3. Disallows inline script (Meaning no <script> tags or "on" attributes on HTML elements) on recent versions of Android, iOS, or Windows via a W3C Content Security Policy (CSP) in index.html +3. Disallows inline script (Meaning no <script> tags or "on" attributes on HTML elements) on recent versions of Android, iOS, or Windows via a W3C Content Security Policy (CSP) in index.html 4. Allows the "tel:", "sms:", "mailto:", and "geo:" intents You'll want to start your project with roughly these same defaults and alter as needed. See below for how to add these defaults to your porject and the [Introduction to Cordova 5 Security](./cordova-5-security.md) document for details on why these defaults are in palce and how to change them. ###Configuring Security Settings from a VS Project -When you upgrade a project to Cordova 5.0.0+, you will want to take the following steps to if you wish to mirror the base security policy listed above. You can then customize as needed to meet your needs. +When you upgrade a project to Cordova 5.0.0+, you will want to take the following steps to if you wish to mirror the base security policy listed above. You can then customize as needed to meet your needs. 1. Add the whitelist plugin to your project via config.xml: 1. Right-click on config.xml and select "View Code" - 2. Add the following XML elements under the <widget> element: + 2. Add the following XML element under the <widget> element: ~~~~~~~~~~~~~~~~~~~~~~~ @@ -88,7 +88,7 @@ When you upgrade a project to Cordova 5.0.0+, you will want to take the followin 1. If you have not already, right-click on config.xml and select "View Code" 2. Add the following XML elements under the <widget> element: - + ~~~~~~~~~~~~~~~~~~~~~~~ @@ -97,28 +97,28 @@ When you upgrade a project to Cordova 5.0.0+, you will want to take the followin ~~~~~~~~~~~~~~~~~~~~~~~ - + You should already have an <access> element in your config.xml. You can use the "Domain Access" list under the "Common" tab in the config.xml designer to add or edit your current list. 3. Optionally, you can allow navigation to hosted content by adding URLs to config.xml as follows: - + ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ 3. Add a Content Security Policy (CSP) to your HTML pages: - 1. Add the following <meta> tag to each of your top level HTML pages (like index.html). - + 1. Add the following <meta> tag to each of your top level HTML pages (like index.html). + ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ - + Note: It does not need to be added to pages dynamically loaded by a JavaScript framework like AngluarJS or WinJS - many times you just need to add it to index.html. - + 2. Customize the CSP policy to meet your needs. See [Introduction to Cordova 5 Security](./cordova-5-security.md) for details. - + 3. You may wish to use the Crosswalk WebView plugin when targeting earlier versions of Android as CSP support was not introduced until Android 4.4. See [the section on Crosswalk later in this article](#crosswalk) for additional tips on using Crosswalk. - + ##Primary Cordova Plugin Repository is Now Npm Another significant departure in Cordova 5 and the community as a whole is the migration of the primary source of Cordova plugins from the custom repository backed model that exists in Cordova 3.x and 4.x to the "Node Package Manager" (npm) repository. The plugins.cordova.io repository has seen a few service interruptions and given the web community's increased use of Node.js for client-side development and Cordova's heavy use of npm for not only its command line interface but as a source for Cordova "platforms," the natural next step was to migrate plugins to npm as well. More details on this transition [can be found here.](http://go.microsoft.com/fwlink/?LinkID=617671) @@ -126,20 +126,28 @@ Another significant departure in Cordova 5 and the community as a whole is the m However, unfortunately this switch over is not transparent. For a few very specific reasons, this change over can be a bit confusing and we're working with the community to determine some ways to make the transition a bit more seamless going forward. ###Plugin ID Changes -A significant change to be aware of is that the IDs used to refer to many Cordova plugins have changed. This was done for two reasons. First, the different ID helps to re-enforce that older versions of Cordova will not get plugin updates. Rather than having an arbitrary version number where the updates stop, using a different ID makes this change over explicit. Second, the old reverse domain style for Cordova plugin IDs does not conform to community best practices for package names in npm. +A significant change to be aware of is that the IDs used to refer to many Cordova plugins have changed. This was done for two reasons. First, the different ID helps to re-enforce that older versions of Cordova will not get plugin updates. Cordova 3.x and 4.x simply do not support fetching plugins from npm. Rather than having an arbitrary version number where the updates stop, using a different ID makes this change over explicit. Second, the old reverse domain style for Cordova plugin IDs does not conform to community best practices for package names in npm. -As a result, core plugins like Camera have changed from [org.apache.cordova.camera](http://go.microsoft.com/fwlink/?LinkID=617672) in version 0.3.6 of the plugin to [cordova-plugin-camera](http://go.microsoft.com/fwlink/?LinkID=617673) in versions 1.0.0 and higher. +As a result, core plugins like Camera have changed from [org.apache.cordova.camera](http://go.microsoft.com/fwlink/?LinkID=617672) in version 0.3.6 of the plugin to [cordova-plugin-camera](http://go.microsoft.com/fwlink/?LinkID=617673) in versions 1.0.0 and higher. ![Custom Local Plugin]() ![Custom Local Plugin]() -You can find running list of [old verses new plugin IDs in this location](http://go.microsoft.com/fwlink/?LinkID=617674). You will be informed of the new ID whenever you add a plugin from this list when either using the command line or the config.xml designer. The config.xml designer will automatically add these new IDs for Cordova 5.0.0+ and the old IDs for older versions of Cordova that do not support them. +You can find running list of [old verses new plugin IDs in this location](http://go.microsoft.com/fwlink/?LinkID=617674). + +Visual Studio 2015 currently only uses the old IDs since these are required for the default version of Cordova 4.3.1. We will resolve this problem in a subseqent update by dynamically updating the list based on the Cordova version selected. However, you can add npm versions of plugins to your project fairly easily by adding an XML element to config.xml as follows: + +~~~~~~~~~~~~~~~~~ + +~~~~~~~~~~~~~~~~~ + +See [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-npm) for additional details on add npm versions of plugins to your project. ###Cordova Plugin Registry As of 7/14/2015, plugins.cordova.io now has two registry sections: -- For the time being, the landing page of [plugins.cordova.io](http://go.microsoft.com/fwlink/?LinkID=618599) **does not contain npm sourced plugins** since these will work with any version of Cordova. +- For the time being, the landing page of [plugins.cordova.io](http://go.microsoft.com/fwlink/?LinkID=618599) **does not contain npm sourced plugins** these plugins only work with Cordova 5.0.0+. - However, npm sourced plugins can be found on the **new [npm registry section of plugins.cordova.io](http://go.microsoft.com/fwlink/?LinkID=618600)** or you can search npm iself using the [ecosystem:cordova](http://go.microsoft.com/fwlink/?LinkID=617675) tag. ![Npm Plugin Registry]() @@ -148,7 +156,7 @@ Both sets of plugins can be used with Cordova 5.0.0+ so in the short term you ma ###Cordova 3.x and 4.x Don't Support Npm as a Plugin Source -An early source of confusion can lead from the fact that Cordova 3.x and 4.x cannot use plugins sourced from npm. The Cordova CLI in these versions simply does not have the capability. A specific issue that can come up here is that updates to plugins will now generally be going to npm **not** the older plugin registry sourced method used by these earlier version of Cordova plugins. +An early source of confusion can lead from the fact that Cordova 3.x and 4.x cannot use plugins sourced from npm. The Cordova CLI in these versions simply does not have the capability. A specific issue that can come up here is that updates to plugins will now generally be going to npm **not** the older plugin registry sourced method used by these earlier version of Cordova. Generally your best course of action if you need an updated plugin is to also update to Cordova 5.1.1 or later. See the [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-npm) section if you absolutley must get an updated plugin for a project that uses an earlier version of Cordova for potential options. @@ -156,7 +164,7 @@ Generally your best course of action if you need an updated plugin is to also up ##Gradle Build Instead of Ant for Android On the surface, this seems like a fairly innocuous change but we've continued to hear about unexpected issues in some 3rd party Cordova plugins because of this change so it is worth a mention. -Up until Cordova 5.0.0 (Cordova Android platform version 4.0.0), Cordova used [Apache Ant](http://go.microsoft.com/fwlink/?LinkID=617676) as the primary build system to build an Android version of an app. This has now changed to [Gradle](http://gradle.org/) as the default though developers can force an Ant build using the Cordova CLI as follows: +Up until Cordova 5.0.0 (Cordova Android platform version 4.0.0), Cordova used [Apache Ant](http://go.microsoft.com/fwlink/?LinkID=617676) as the primary build system to build an Android version of an app. This has now changed to [Gradle](http://gradle.org/) as the default though developers can force an Ant build using the Cordova CLI as follows: ~~~~~~~~~~~~~~~~~~~~~~~ cordova build android -- --ant @@ -168,18 +176,20 @@ There are three major ways that switching to Gradle can affect your project: 1. Some 3rd party plugins may now require Gradle and thus typically only work on Cordova 5.0.0 and up. In particular, plugins that modify Android build artifacts in a non-standard way can run into issues. 1. Other 3rd party plugins may not have updated to support Gradle yet and still require Ant to be used. Generally these plugins are designed for Cordova versions < 5.0.0. -A good example of a plugin that requires Gradle is the [Crosswalk plugin](http://go.microsoft.com/fwlink/?LinkID=617677) we will cover a bit in this article. While at one point it also worked with Ant builds, it now errors out if you are not building with Gradle. As a result, Visual Studio 2015 now uses Gradle to build Android in Cordova 5.0.0+ instead of Ant (2015 RC still used Ant). The end result is you could hit compatibility issues with lesser known 3rd party plugins particularly if you have not updated them. +A good example of a plugin that requires Gradle is the [Crosswalk plugin](http://go.microsoft.com/fwlink/?LinkID=617677) we will cover a bit later in this article. While at one point it also worked with Ant builds, it now errors out if you are not building with Gradle. As a result, Visual Studio 2015 now uses Gradle to build Android in Cordova 5.0.0+ instead of Ant (2015 RC still used Ant). However, the end result is you could hit compatibility issues with lesser known 3rd party plugins particularly if you have not updated them. ###Migrating an Existing Project to Use Gradle -Because of these differences you should take the following steps: +Simply updating to Cordova 5.0.0+ will automatically cause Gradle to be used from that point forward. Because of the differences mentioned above you should take the following steps to adapt your project: -1. If you encounter an unexpected build error specifically for Android, see if the error references Cordova plugin source code. If so, update it by removing the plugin using the "Installed" tab of the config.xml designer and re-add the plugin. If you cannot determine which plugin is causing the issue, you can opt to proactively upgrade all of them. +1. If you've already added release signing information into ant.properties in your project, you'll need to place this information in a new file in your project. See the [Packaging & Publishing tutorial for details](../tutorial-package-publish) for details. -2. If a plugin update doesn't solve the issue, try these steps to eliminate other factors. +2. If you encounter an unexpected build error specifically for Android, see if the error references Cordova plugin source code. If so, update it by removing the plugin using the "Installed" tab of the config.xml designer and add the latest npm based version using [the XML bassed approach](../tips-and-workarounds/general/README.md#plugin-npm) described earlier. If you cannot determine which plugin is causing the issue, you can opt to proactively upgrade all of them. + +3. If a plugin update doesn't solve the issue, try these steps to eliminate other factors. 1. Create a fresh project and see if the problem reproduces. 2. To eliminate Visual Studio as a potential culprit, you can test using a standard Cordova CLI project by entering the following in a command prompt: - + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ npm install -g cordova@5.1.1 cordova create testProj @@ -188,18 +198,16 @@ Because of these differences you should take the following steps: cordova plugin add cordova-plugin-in-question cordova build android ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - + ... replacing the Cordova version and plugin name for those that apply to your situation. You can also specify a fully qualified Git URI or filesystem path in place of the plugin name. - - 2. If the problem reproduces, you may want to contact the plugin author and let them know about the problem. Before doing so, be sure to check for existing open issue as more than likely there's already one on the plugin author's GitHub site that you can use to provide additional information. Mention that you encountered issues when using Tools for Apache Cordova but include the Cordova CLI repro for the plugin author's benefit. See the [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-troubleshoot) section of our docs for additional troubleshooting tips. -3. If you've already added release signing information into ant.properties in your project, you'll need to place this information in a new file in your project. See the [Packaging & Publishing tutorial for details](../tutorial-package-publish) for details. + 2. If the problem reproduces, you may want to contact the plugin author and let them know about the problem. Before doing so, be sure to check for existing open issue as more than likely there's already one on the plugin author's GitHub site that you can use to provide additional information. Mention that you encountered issues when using Tools for Apache Cordova but include the Cordova CLI repro for the plugin author's benefit. See the [tips and workarounds](../tips-and-workarounds/general/README.md#plugin-troubleshoot) section of our docs for additional troubleshooting tips. ##Pluggable WebViews and the Crosswalk WebView for Android -An exciting new development in the Cordova Android platform is the support for what are called "pluggable WebViews." What this feature allows you to do is swap out the built in Android WebView with a completely different WebView implementation. This is a significant improvement as the Android browser and thus the WebView has been locked at a specific version without the ability to update unless you update the version of the OS on the device. This has changed in the Android OS as of 5.0 (API 22), but unlike iOS or Windows where devices can opt to upgrade and developers need only concern themselves with a few major versions of the browser, older Android devices are locked at a particular sub-revision of Android and thus the browser with no ability to upgrade the device in many cases. The end result has been a vast array of small differences between Android devices. +An exciting new development in the Cordova Android platform in Cordova 5 is the support for what are called "pluggable WebViews." What this feature allows you to do is swap out the built in Android WebView with a completely different WebView implementation. This is a significant improvement as the Android browser and thus the WebView is locked at a specific version without the ability to update unless you update the version of the OS on the device. This has changed in the Android OS as of 5.0, but unlike iOS or Windows where devices can opt to upgrade and developers need only concern themselves with a few major versions of the browser, older Android devices are locked at a particular sub-revision of Android (and thus the browser) with no ability to upgrade the device in many cases. The end result has been a vast array of small differences between Android devices. -[Crosswalk](http://go.microsoft.com/fwlink/?LinkID=617678) is a project that is designed to allow developers to take embed a very recent and specific version of the Chromium WebView inside their Android app. The Crosswalk WebView can be embedded in apps running on Android 4.0 and up and brings with it the significant advantage of a consistent WebView implementation across all Android device versions it supports. +[Crosswalk](http://go.microsoft.com/fwlink/?LinkID=617678) is a project that is designed to allow developers to embed a very recent and specific version of the Chromium WebView inside their Android app. The Crosswalk WebView can be embedded in apps running on Android 4.0 and up and brings with it the significant advantage of a consistent WebView implementation across all Android device versions it supports. There is now a [Cordova Crosswalk plugin](http://go.microsoft.com/fwlink/?LinkID=617679) that takes advantage of the new pluggable WebView features in Cordova 5.0.0+ (and the Cordova Android 4.0.0 platform it uses) and makes it simple to add into your project. @@ -210,7 +218,7 @@ To use the Crosswalk WebView plugin from Visual Studio, follow these steps: 1. Right-click on config.xml and select "View Code" -2. Add the following XML elements under the <widget> element: +2. Add the following XML element under the <widget> element: ~~~~~~~~~~~~~~~~~~~~~~ @@ -231,16 +239,16 @@ _JAVA_OPTIONS=-Xmx512M ##Windows 10 Support -Historically, Windows and Windows Phone 8.1 have had a number of compatibility challenges with Cordova apps due to underlying platform differences around security rules. A [JavaScript compatibility](http://go.microsoft.com/fwlink/?LinkID=617680) framework was released to help alleviate some of these issues on 8.1, but starting with **Cordova 5.1.1**, you can now build Windows 10 apps. In addition to supporting the new Windows Universal platform that allows a single code base and app package to be used across a number of different devices, Windows 10 also brings a number of significant improvments to Apache Cordova users. +Historically, Windows and Windows Phone 8.1 have had a number of compatibility challenges with Cordova apps due to underlying platform differences around security rules. A [JavaScript compatibility](http://go.microsoft.com/fwlink/?LinkID=617680) framework was released to help alleviate some of these issues on 8.1, but starting with **Cordova 5.1.1**, you can now build Windows 10 apps. In addition to supporting the new Windows Universal platform that allows a single code base and app package to be used across a number of different devices, Windows 10 also brings a number of significant improvements to Apache Cordova users. In particular: -1. Elimination of the existing dynamic content restrictions in Windows 8.0 and 8.1. -2. Cordova plugin support for external hosted content through the use of the same <allow-navigation> element used by Android and iOS. -3. Support for the powerful Content Security Policy (CSP) that is also now reccomended for use with the Android and iOS Cordova platforms. See [this article for more details](./cordova-5-security.md). -4. Apps can now run in two different security modes: - 1. Remote mode: The default, flexible security mode that only has a hand full of store submission restrictions - 2. Local mode: A more secure mode that adds additional protections but disables hosted content and inline script +- Elimination of the existing dynamic content restrictions in Windows 8.0 and 8.1. +- Cordova plugin support for external hosted content through the use of the same <allow-navigation> element used by Android and iOS. +- Support for the powerful Content Security Policy (CSP) that is also now recommended for use with the Android and iOS Cordova platforms. See [this article for more details](./cordova-5-security.md). +- Apps can now run in two different security modes: + - Remote mode: The default, flexible security mode that only has a hand full of store submission restrictions + - Local mode: A more secure mode that adds additional protections but disables hosted content and inline script These improvements mean that the Windows platform now has a flexible model compatible with Cordova platforms like Android and iOS while still providing you the tools you need to secure your app. Check out the [Cordova Windows 10](http://go.microsoft.com/fwlink/?LinkID=617471) documentation for more information on new features. diff --git a/tutorial-cordova-5/cordova-5-security.md b/tutorial-cordova-5/cordova-5-security.md index f2b1630e..2fa4ebb0 100644 --- a/tutorial-cordova-5/cordova-5-security.md +++ b/tutorial-cordova-5/cordova-5-security.md @@ -35,8 +35,8 @@ Note that if you simply wanted to display www.microsoft.com without giving it ac There is still some variation in behavior by platform for these whitelist features based on the concerns and capabilities of the underlying native technology. -1. **Android** supports the use of access, allow-navigation, and allows-intent. Intents are an Android specific concept. -2. **iOS** supports the use of access, and allow-navigation. +1. **Android** supports the use of access, allow-navigation, and allow-intent. Intents are an Android specific concept. +2. **iOS** supports the use of access and allow-navigation. 3. **Windows 10** via the Windows platform supports the allow-navigation element exactly like iOS and Android. The access element is also supported but behaves a bit differently in that navigation is allowed to these URIs but Cordova and plugin APIs are disabled thereby reducing risk. In Windows 10, XHR, CSS, and image access rules are intended to be controlled by a Content Security Policy (CSP) via connect-src rather than specific whitelists. We'll cover more details on how to use CSPs later in this document. 4. **Windows 8.0, 8.1, and Windows Phone 8.1** via the Windows platform does not support navigating to external URIs outside of the InAppBrowser plugin due to fundamental platform limitations. XHR calls are always allowed to any domain. 5. The **Windows Phone 8 (WP8)** platform still uses the old definition of the access element and does not support allow-navigation or allow-intent. @@ -44,7 +44,7 @@ There is still some variation in behavior by platform for these whitelist featur Note that if you would prefer to retain the old behavior of the access element for Android and iOS, you can install [cordova-plugin-legacy-whitelist](http://go.microsoft.com/fwlink/?LinkID=617695) though this is intended only to be used for backwards compatibility and new apps should generally move towards using cordova-plugin-whitelist. ###Automatically Adding the Plugin -A new feature in Cordova 5.0.0+ allows you specify plugins in config.xml that are then automatically added at build time. This capability can be used with any Cordova plugin and is conceptually similar to the Visual Studio specific "vs:plugin" element. We worked with the community to get it added into the core and over time we will discontinue the use of the "vs" prefix but we have left the feature in place for backwards compatibility (as Cordova 4.3.0 does not have this feature). Near term most VS documentation will recommend the use of "vs:plugin" instead. +A new feature in Cordova 5.0.0+ allows you specify plugins in config.xml that are then automatically added at build time. This capability can be used with any Cordova plugin and is conceptually similar to the Visual Studio specific "vs:plugin" element. We worked with the community to get it added into the core and over time we will discontinue the use of the "vs" prefix but we have left the feature in place for backwards compatibility (as Cordova 4.3.1 does not have this feature). Near term most VS documentation will recommend the use of "vs:plugin" instead. Cordova 5.0.0+: @@ -77,7 +77,7 @@ The only problem with the CSP is this: It's pretty confusing to read at first an You can find a [great tutorial on using the CSP in detail here](http://go.microsoft.com/fwlink/?LinkID=617697), but here are some common "gotchas" for those new to the concepts: -1. By default, applying a CSP **disables both eval() and inline script** while the CSP policy in the **Cordova CLI template (cordova create command) disables inline but allows eval()**. +1. By default, applying a CSP **disables both eval() and inline script** while the CSP in the **Cordova CLI template (cordova create command) disables inline but allows eval()**. - Disabling both eval and inline script means no script tags with JavaScript in it, no "on" event handler attributes on HTML elements, no eval(), no new Function(), etc. Disabling these features effectively makes it impossible to do cross-site scripting because there is no way to inject JavaScript anywhere that does not originate from a file. If you're property managing your whitelists, you're very secure. - The problem is that disabling eval() in particular can break quite a few web frameworks. @@ -94,7 +94,7 @@ You can find a [great tutorial on using the CSP in detail here](http://go.micros 1. The default CSP policy in the Cordova CLI template only allows access to JavaScript and CSS files inside the app or the same domain, not a different domain. **As a result, CDN hosted content typically cannot be referenced.** - - This is another technique to reduce risk by stating that a given web page can only reference content from **'self'**. The end result is that cross-site scripting vulnerabilities are further reduced by preventing your web page from being hijacked to include content from an external, untrusted sourced. + - This is another technique to reduce risk by stating that a given web page can only reference content from **'self'**. The end result is that cross-site scripting vulnerabilities are further reduced by preventing your web page from being hijacked to include content from an external, untrusted sources. - You can loosen this restriction by listing other trusted domains. In fact, the default Cordova CLI template lists "https://ssl.gstatic.com" as a trusted domain since Android needs it for TalkBack to function properly. @@ -107,21 +107,21 @@ You can find a [great tutorial on using the CSP in detail here](http://go.micros ##Migrating an Existing Project When you upgrade a project to Cordova 5.0.0+ from Cordova 4.3.1 or below in Visual Studio, you will want to take the following steps to ensure your app functions as you would expect. -1. Add the whitelist plugin to your project via config.xml: +1. Add the whitelist plugin to your project: 1. Right-click on config.xml and select "View Code" - 2. Add the following XML element under the <widget> element: + 2. Add the following XML elements under the <widget> element: ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ The next time you build in Visual Studio, VS will install this version of the whitelist plugin. You can update the version number as needed. - + 2. Update config.xml with allow-intent or allow-navigation elements as needed: - 1. If you have not already, right-click on config.xml and select "View Code" + 1. Right-click on config.xml and select "View Code" if you have not already 2. Add the following XML elements under the <widget> element: From ae7d8a8933d2cf3633ffdaedf3129f58e7c1d1bd Mon Sep 17 00:00:00 2001 From: Chuck Lantz Date: Fri, 17 Jul 2015 08:04:37 -0700 Subject: [PATCH 17/17] Refined details --- tutorial-gulp/gulp-task-runner-explorer.md | 32 +++++++++++++--------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/tutorial-gulp/gulp-task-runner-explorer.md b/tutorial-gulp/gulp-task-runner-explorer.md index 7c3fc300..c02f67c0 100644 --- a/tutorial-gulp/gulp-task-runner-explorer.md +++ b/tutorial-gulp/gulp-task-runner-explorer.md @@ -3,9 +3,7 @@ [Gulp](http://go.microsoft.com/fwlink/?LinkID=533803) is an increasingly popular JavaScript based task runner with a large number of [useful plugins](http://go.microsoft.com/fwlink/?LinkID=533790) designed to automate common "tasks" for everything from compilation, to packaging, deployment, or simply copying files around. Both Gulp and the [Apache Cordova Command Line interface](http://go.microsoft.com/fwlink/?LinkID=533773) (CLI) are Node.js based which makes the two highly complementary technologies. -You may find it useful to fire off a Gulp task every time you do a Cordova build particularly when using a Gulp to minify your JavaScript code or compile languages like [TypeScript](http://go.microsoft.com/fwlink/?LinkID=533748), [LESS](http://go.microsoft.com/fwlink/?LinkID=533791), or [SASS](http://go.microsoft.com/fwlink/?LinkID=533792). Fortunately, this is quite easy to do via a "before prepare" "hook." A Cordova [hooks](http://go.microsoft.com/fwlink/?LinkID=533744) enables you to fire off shell or Node.js scripts at any number of different points in the Cordova build lifecycle. In fact, hooks can cover everything from platform or plugin add to compilation and emulation. - -The "prepare" step in Cordova is in charge of transforming all of your content in www, plugins, and merges and preparing a native project for a given platform for compilation. The "build" command in Cordova does a "prepare" before moving on to compilation and as a result it is useful to use the "before prepare" hook to wire in pre-build tasks. +You may find it useful to fire off a Gulp task right from Visual Studio every time you do a Cordova build particularly when using a Gulp to minify your JavaScript code or compile languages like [TypeScript](http://go.microsoft.com/fwlink/?LinkID=533748), [LESS](http://go.microsoft.com/fwlink/?LinkID=533791), or [SASS](http://go.microsoft.com/fwlink/?LinkID=533792). Fortunately, this is quite easy to do thanks to the "Task Runner Explorer." ##Using the Visual Studio Task Runner Explorer The Visual Studio Task Explorer provides a convenient way to run Gulp tasks right from Visual Studio. First let's install Gulp globally so it's convenient to use from the command line as well as Visual studio. Type the following from a command prompt: @@ -14,7 +12,7 @@ The Visual Studio Task Explorer provides a convenient way to run Gulp tasks righ npm install -g gulp ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Next, create a [package.json](http://go.microsoft.com/fwlink/?LinkID=533781) file in your project. This will be the location you will use to reference Gulp or any [Gulp plugins](http://go.microsoft.com/fwlink/?LinkID=533790) you want to use. +Next, create a [package.json](http://go.microsoft.com/fwlink/?LinkID=533781) file in your project (if one is not already present). This will be the location you will use to reference Gulp or any [Gulp plugins](http://go.microsoft.com/fwlink/?LinkID=533790) you want to use. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ { @@ -24,23 +22,25 @@ Next, create a [package.json](http://go.microsoft.com/fwlink/?LinkID=533781) fil } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -You can install these dependencies in Visual Studio by right-clicking on the Dependencies node in the Solution Explorer and selecting "Restore Packages". +You can install these dependencies at any time in Visual Studio by right-clicking on the Dependencies node in the Solution Explorer and selecting "Restore Packages". ![Restore Packages]() -If you're updating package.json outside of VS, type the following to install whatever you have added to package.json: +Note that, thanks to Visual Studio's command line interoperability, you can also update package.json outside of VS and type the following to install whatever you have added to package.json: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ npm install ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -If editing from the command line you can then update package.json with additional dependencies by hand or use the npm "—save-dev" flag. For example, this will both install the [uglify Gulp plugin](http://go.microsoft.com/fwlink/?LinkID=533793) and add it as a dependency: +This is what the Task Runner Explorer execute under the covers when you "Restore Packages." In general you should not add the "node_modules" folder that is generated into source control and it is omitted from the Solution Explorer in Visual Studio for this reason. + +Similarly, you can update package.json with additional dependencies by hand in Visual Studio or use the npm "--save-dev" flag from the command line. For example, this will both install the [uglify Gulp plugin](http://go.microsoft.com/fwlink/?LinkID=533793) and add it as a dependency: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ npm install --save-dev gulp-uglify ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Next, create a file called "gulpfile.js" and add it to the root of your project. For example, here is a simple Gulp task. +Now that we have the needed dependiencies installed, create a file called "gulpfile.js" and add it to the root of your project. For example, here is a simple Gulp task. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ var gulp = require("gulp"); @@ -49,11 +49,11 @@ gulp.task("before-build", function() { }); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In Visual Studio, open the Task Runner Explorer if you have not already by going to View \> Other Windows \> Task Runner Explorer. +In Visual Studio, open the Task Runner Explorer by going to View \> Other Windows \> Task Runner Explorer. ![View Menu]() -You will then see the Task Runner Explorer with the before-build task we created visible. +After clicking the "Refresh" button you will then see the Task Runner Explorer with the before-build task we created visible. ![Before Build Task]() @@ -61,10 +61,16 @@ Now to attach this to the "Before Build" event, right click and select Bindings ![Before Build Task Binding]() -The next time you run a build this task will automatically fire! +The next time you run a build this task will automatically fire! You can also execute tasks without binding them to an event simply by selecting "Run" from the same context menu. ##Supporting Task Runner Explorer Bindings from the Command Line -By default, bindings in the Task Runner Explorer only work inside of Visual Studio. When working outside of Visual Studio we generally recommend simply running the Gulp tasks directly from the command line. However, you may want to be able to simply assign bindings in Visual Studio and have them apply from builds at the command line or in a team / Continuous Integration (CI) environment. Fortunately this is fairly straight forward to do via a [Cordova "hook"](http://go.microsoft.com/fwlink/?LinkID=533744). +By default, bindings in the Task Runner Explorer only work inside of Visual Studio. When working outside of Visual Studio we generally recommend simply running the Gulp tasks directly from the command line. For example, this will run the Gulp task we created above: + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +gulp before-build +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +However, you may want to be able to simply assign bindings in Visual Studio and have them apply from builds at the command line or in a team / Continuous Integration (CI) environment. Fortunately this is fairly straight forward to do via a [Cordova "hook"](http://go.microsoft.com/fwlink/?LinkID=533744). To do so, **[follow these directions to add a pre-built Cordova hook to your project](./hook-task-runner-binding)**. You can then modify it as you see fit to meet your needs. @@ -76,4 +82,4 @@ To do so, **[follow these directions to add a pre-built Cordova hook to your pro * [Visit our site http://aka.ms/cordova](http://aka.ms/cordova) * [Read MSDN docs on using Visual Studio Tools for Apache Cordova](http://go.microsoft.com/fwlink/?LinkID=533794) * [Ask for help on StackOverflow](http://stackoverflow.com/questions/tagged/visual-studio-cordova) -* [Email us your questions](mailto:/vscordovatools@microsoft.com) \ No newline at end of file +* [Email us your questions](mailto:/vscordovatools@microsoft.com)