Aaron T Maldonado created CB-14243:
--------------------------------------
Summary: Cordova 8.0.0 ignores save-exact
Key: CB-14243
URL: https://issues.apache.org/jira/browse/CB-14243
Project: Apache Cordova
Issue Type: Bug
Components: cordova-lib
Affects Versions: 8.0.0
Environment: cordova (Cordova CLI) : 8.0.0
System:
Android SDK Tools : 26.1.1
ios-deploy : 1.9.2
ios-sim : 6.0.0
Node : v8.11.3
npm : 6.2.0
OS : macOS High Sierra
Xcode : Xcode 9.4.1 Build version 9F2000
Reporter: Aaron T Maldonado
When installing plugins with an exact version (no semver prefixes) and
save-exact is specified either on the command line or via the global config
(e.g. cordova config), cordova-lib 8.0.0 modifies package.json and config.xml
with semver prefixes.
The problem is that cli.js records the option in an object with a key of
"save_exact", but in src/cordova/plugin/add.js of cordova-lib, keys of the
propagated options object from cli.js are copied into another fetch options
object for the plugman fetch. However, save-exact is copied into the new
options object by referencing the key "save-exact" instead of "save_exact",
which is how it was initially stored in cli.js. Since the referenced key
doesn't exist, save-exact will be undefined (i.e. false) when passed to
plugman.fetch and therefore ignored.
This affects both the "--save-exact" command line flag and the save-exact
attribute in the cordova global config.
The fix is to change "save-exact" to "save_exact" on line 90 of
src/cordova/plugin/add.js in cordova-lib. When I make this change locally,
save-exact works properly.
https://github.com/apache/cordova-lib/blob/b8e2c4ddc119c4c8bbe8c073c51612625e084cab/src/cordova/plugin/add.js
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]