There've been some changes to CLI in the last month that fix Android
requiring an SDK to run create & plugin add. Likewise, a fix just went in
this week (last week?) that fixes the slash problem for xcode project files
on windows.

That said, I like your idea of not modifying platforms/ outside of prepare
/ build.

On Thu, Oct 30, 2014 at 10:48 AM, Treggiari, Leo <[email protected]>
wrote:

> 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 sources.
>
> 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.
>
> Thanks,
> Leo
>

Reply via email to