GitHub user TimBarham opened a pull request:

    https://github.com/apache/cordova-lib/pull/498

    CB-11985 Check if cached platform/plugin exists before 'npm cache'

    ### What does this PR do?
    Before calling `npm cache add` when installing a platform or plugin, look 
for an existing `package.tgz` file in the cache directory. This avoids 
unnecessary `npm` call with long timeout if not connected to the internet.
    
    Background: First time build failures in Cordova tools in Visual Studio are 
primarily due to `npm` failures. Therefore we are working to avoid any 
requirement for `npm` to hit the internet in simple build scenarios. This 
includes pre-installing cached versions of certain platforms and plugins. But 
we only get the full benefit if Cordova uses these cached versions if it finds 
them, without calling npm cache add.
    
    A couple of things to note:
    * This change uses shared code for platforms and plugins, and means plugins 
will also be cached to the `.cordova` directory rather than the global npm 
cache directory. Is that a concern?
    * It is likely this change will be meaningless with the proposed changes to 
installing platforms and plugins in Cordova 7.x. We'll cross the bridge when we 
come to it 😄.
    
    ### What testing has been done on this change?
    Local testing.
    
    ### Checklist
    - [x] [Reported an issue](http://cordova.apache.org/contribute/issues.html) 
in the JIRA database
    - [x] Commit message follows the format: "CB-3232: (android) Fix bug with 
resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform 
affected.


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

    $ git pull https://github.com/TimBarham/cordova-lib use-cached-platform

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

    https://github.com/apache/cordova-lib/pull/498.patch

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

    This closes #498
    
----
commit 667e774d46399cf97a9481c3890fa7a862871d46
Author: TimBarham <[email protected]>
Date:   2016-10-07T22:58:35Z

    CB-11985 Check if cached platform/plugin exists before 'npm cache'
    
    This avoids unnecessary npm call with long timeout if not connected to the 
internet.

----


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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to