You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Mike Billau (JIRA)" <ji...@apache.org> on 2013/10/08 16:45:41 UTC
[jira] [Reopened] (CB-3390) android.json (etc.) not getting updated
on uninstall
[ https://issues.apache.org/jira/browse/CB-3390?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mike Billau reopened CB-3390:
-----------------------------
I can reproduce with dependent plugins.
cordova --version
[3.1.0-0.1.0]
cordova create SampleApp && cd SampleApp
cordova platform add android
cordova plugin add org.apache.cordova.file
cordova plugin add org.apache.cordova.file-transfer
cordova plugin ls
[org.apache.cordova.file, org.apache.cordova.file-transfer]
cat /plugins/android.json
{
"prepare_queue": {
"installed": [],
"uninstalled": []
},
"config_munge": {
"res/xml/config.xml": {
"/*": {
"<feature name=\"File\"><param name=\"android-package\" value=\"org.apache.cordova.file.FileUtils\" /></feature>": 1,
"<feature name=\"FileTransfer\"><param name=\"android-package\" value=\"org.apache.cordova.filetransfer.FileTransfer\" /></feature>": 1
}
},
"AndroidManifest.xml": {
"/*": {
"<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" />": 2
}
}
},
"installed_plugins": {
"org.apache.cordova.file": {
"PACKAGE_NAME": "io.cordova.hellocordova"
},
"org.apache.cordova.file-transfer": {
"PACKAGE_NAME": "io.cordova.hellocordova"
}
},
"dependent_plugins": {}
}
cordova plugin rm org.apache.cordova.file-transfer
cordova plugin ls
[ No plugins added. Use 'cordova plugin add <plugin>' **Not sure if this is expected. Should removing a plugin's dependency remove that plugin? I don't think so!**
cat /plugins/android.json
{
"prepare_queue": {
"installed": [],
"uninstalled": []
},
"config_munge": {
"res/xml/config.xml": {
"/*": {}
},
"AndroidManifest.xml": {
"/*": {}
}
},
"installed_plugins": {
"org.apache.cordova.file": {
"PACKAGE_NAME": "io.cordova.hellocordova"
}
},
"dependent_plugins": {}
}
**You see that plugins/android.json is definitely wrong, since it says that the file plugin is still installed, but it was actually removed by plugman.**
The project cannot be built either anymore:
Error: ENOENT, no such file or direcotry "......plugins\org.apache.cordova.file"
I think that this demonstrates at least one bug:
1. (potential) Removing a dependency plugin removes the associated top level plugin (removing file-transfer should not remove file in my opinion)
2. Removing a dependency plugin does not remove the associated top level plugin's entry from plugins/android.json, resulting in a broken environment.
> android.json (etc.) not getting updated on uninstall
> ----------------------------------------------------
>
> Key: CB-3390
> URL: https://issues.apache.org/jira/browse/CB-3390
> Project: Apache Cordova
> Issue Type: Bug
> Components: CLI, Plugman
> Reporter: Braden Shepherdson
> Assignee: Filip Maj
>
--
This message was sent by Atlassian JIRA
(v6.1#6144)