cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Treggiari, Leo" <>
Subject cordova xxx add - is there a problem?
Date Thu, 30 Oct 2014 14:48:46 GMT
Is there an issue with the semantics of "plugin add" and "platform add"?

This is just a high level query to see if this is something worth discussing in more detail.
 I don't know exactly what each Cordova CLI command does.  My knowledge is based upon reading
documentation (which is sometimes wrong as noted in recent e-mails) and experimentation.

What does "add" do?

1.      For "plugin add" fetches the plugin sources.  For "platform add" fetches the platform
implementation if necessary.

2.      Stores some metadata somewhere indicating that the plugin or platform was added? 
What and where this metadata is stored should be better documented.

3.      For "plugin add", processes plugin variables, if specified, which modifies the plugin

4.      Creates/modifies the native platform "project" (e.g. a Visual Studio, Eclipse, or
Xcode, etc. project) to make the appropriate changes.

If  "plugin add" or "platform add" do more than this, I'd appreciate being educated.

My question is, should "add" stop at step #2 and leave the rest to the prepare step?

Here's why:

*        We see there is an issue with multiple developers on the same project on different
platforms.  E.g. when one developer is on Windows working on the Windows and Android versions
of the project and another is on Mac working on the iOS version of the project.  If the shared
project wants to add all three platforms (which it does...) then Cordova CLI has problems.
 Basically because not much else than the "create" command works without having native SDKs
installed.  Would many issues be solved if the "add" command did not require the presence
of native SDKs, but rather "prepare" did?

*        There seems to be an issue with the co-existence of Cordova CLI and IDEs, and in
particular with IDEs that want to build in the cloud without the requirement of native SDKs.
 It would be ideal if multiple users on the same project could use different tools - e.g.
one use the command line and one use the IDE.  The basic "definition" of a Cordova CLI project,
i.e. the part that needs to be shared, is the list of platforms and plugins and the settings
in the top level config.xml.  If the basic definition of the project could be created/edited
from both the CLI and various IDEs, then the rest of the development workflow (prepare, build,
emulate, etc.) could be implemented in different ways, but the project definition could still
be shared.

P.S. the "remove" command has similar semantics.


  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message