This feature has not received any work yet, largely because I was away most
of last week. It will land in 3.2, or possibly earlier - CLI releases are
not tied to Cordova releases.

Braden


On Mon, Oct 7, 2013 at 10:57 AM, Michael Gauthier <m...@silverorange.com>wrote:

> Did this feature land in 3.1.0 or is it targeted for 3.2.0?
>
> On 2013-10-03 11:30, Michal Mocny wrote:
>
>> Yeah Braden we've diverged sorry, lets focus.
>>
>> Big +1 for your proposal to make prepare step do what users expect.
>>
>> -Michal
>>
>>
>> On Thu, Oct 3, 2013 at 10:20 AM, Braden Shepherdson <bra...@chromium.org
>> >wrote:
>>
>>  I agree that the syncing solutions are too complex and confusing.
>>>
>>> I return, then, to my original proposal all those emails ago: updating
>>> the
>>> native plugin files in platforms/foo when you prepare, to make life
>>> easier
>>> for plugin developers. When coupled with the present cordova plugin add
>>> --link, and future cordova watch, I think this makes the plugin developer
>>> flow pretty good, and without making it too magical or harder to
>>> understand. I think it simplifies prepare: on prepare, your native
>>> projects
>>> are updated to reflect the state of plugins/ and www/. Right now, only
>>> www/, <asset>s and <js-module>s get updated, but not native code.
>>>
>>> As to Xcode and symlinks and all the rest of the borderline thread
>>> hijacking, I think that regardless of what editor you use, you have to be
>>> editing the right file. Xcode and Eclipse make this harder than it needs
>>> to
>>> be, but our job is not to make them suck less.
>>>
>>> Braden
>>>
>>>
>>> On Sun, Sep 29, 2013 at 1:43 PM, Carlos Santana <csantan...@gmail.com
>>>
>>>> wrote:
>>>>
>>>
>>>  +1 Anis
>>>> corodova-cli/plugman should be building block components to higher level
>>>> Tools/IDE.
>>>>
>>>> That we can do better sure, lets provide a few examples using blog pots
>>>>
>>> and
>>>
>>>> maybe videos tutorials vs. trying to support every use case with code.
>>>>
>>>> A watch function could be as simple as using "grunt-contrib-watch" to a
>>>> more complicated environment like "rsync/Eclipse"
>>>>
>>>> I agree lets put emphasis on documenting use cases and the correct
>>>> approach.
>>>> When to get the best out of using prepare,  merges, and hooks
>>>>
>>>> All I said applies when you have the "Web Developer" hat.
>>>>
>>>> For people that have the "Native Plugin Developer" hat then we can do
>>>> things first for cordova-contributors than others can choose to use on
>>>> their own risk since it could be changing too fast and maybe too narrow
>>>>
>>> use
>>>
>>>> case.
>>>>
>>>> --Carlos
>>>>
>>>> --Carlos
>>>>
>>>>
>>>>
>>>> On Sun, Sep 29, 2013 at 9:18 AM, Anis KADRI <anis.ka...@gmail.com>
>>>>
>>> wrote:
>>>
>>>>
>>>>  I gave some thought to this problem and I think we should just leave
>>>>> everything as is. Here's my reasoning:
>>>>>
>>>>> - Most web developers use a text editor (vim, sublime text, text mate,
>>>>> notepad++, ....) to edit their HTML/CSS/Javascript. I've never seen
>>>>> anyone use a fully fledged IDE to edit web assets. It would be like
>>>>> using Microsoft Word to edit a simple .TXT or .MD file
>>>>> - Other developers, people who write Java or Objective C, etc.. use
>>>>> Xcode, Eclipse, IntelliJ, ...and I think these people are not good
>>>>> candidates for cordova-cli.
>>>>>
>>>>> The original PhoneGap promise (now Apache Cordova) was to make it easy
>>>>> for Web Developers to write Mobile Apps using web technologies and I
>>>>> believe that promise is fulfilled with cordova-cli. You have a folder
>>>>> where you drop in your web assets and you can build/deploy to a device
>>>>> or simulate.
>>>>>
>>>>> If people want to use an IDE, then they should be creating native
>>>>> projects with our create scripts and use plugman to manage their
>>>>> plugins.
>>>>>
>>>>> Our documentation should point our users to the right approach
>>>>> depending on the use case. For example:
>>>>>
>>>>> - Building for only one platform ? Building a hybrid app ? Want to use
>>>>> an IDE (Eclipse, Xcode) ? You should use the create scripts and
>>>>> plugman to manage plugins
>>>>>
>>>>> - Building a cross-platform app ? Like managing your project from the
>>>>> command-line ? Want to use your favo(u)rite text editor ? Use
>>>>> cordova-cli
>>>>>
>>>>> These double symlinking, backsyncing solutions will be a source of
>>>>> confusion and issues in my humble opinion. I've said it before but
>>>>> sometimes by trying to please everyone you end up pleasing no one.
>>>>>
>>>>> my .02c
>>>>>
>>>>> -a
>>>>>
>>>>> On Fri, Sep 27, 2013 at 8:20 PM, Michal Mocny <mmo...@chromium.org>
>>>>>
>>>> wrote:
>>>>
>>>>> On Fri, Sep 27, 2013 at 2:10 PM, Andrew Grieve <agri...@chromium.org
>>>>>>
>>>>>
>>>>  wrote:
>>>>>
>>>>>>
>>>>>>  Just tried some symlinks in Xcode 5:
>>>>>>> - Copying assets work (due to our custom build step)
>>>>>>> - Building works (compiler follows links just fine)
>>>>>>> - Editing a fail (big fail. Files open but changes cannot be saved.)
>>>>>>>
>>>>>>>
>>>>>> Hmm, changes via xcode to symlinks fail, you mean?  That would be
>>>>>>
>>>>> hard
>>>
>>>> to
>>>>
>>>>> fix, but perhaps at least its feedback to the user not to make direct
>>>>>>
>>>>> edits
>>>>>
>>>>>> there, when using CLI workflow ;) so may still be a valid change to
>>>>>>
>>>>> make.
>>>>
>>>>>
>>>>>>
>>>>>>
>>>>>>> For Xcode though, it is an option to change our installation step to
>>>>>>>
>>>>>> have
>>>>>
>>>>>> Xcode reference the native files within plugins/ rather than within
>>>>>>> platforms/.
>>>>>>>
>>>>>>>
>>>>>>> Symlinks in Eclipse:
>>>>>>> - Copying assets works out-of-the-box
>>>>>>> - Build works fine
>>>>>>> - Editing seems to work fine (edits saved to symlinked location).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Still though, maybe the best solution would be a combination of the
>>>>>>>
>>>>>> two?
>>>>
>>>>> Have prepare know when an remove+add is necessary?
>>>>>>>
>>>>>>>
>>>>>> Yes, I think thats what we are suggesting.
>>>>>>
>>>>>> The original email mentioned prepare knowing when remove+add are
>>>>>>
>>>>> necessary,
>>>>>
>>>>>> which I think is already settled as a good idea.  Not sure if you had
>>>>>>
>>>>> more
>>>>>
>>>>>> to add about how prepare should know when to do this (currently, its
>>>>>>
>>>>> only
>>>>
>>>>> on plugin.xml changes).
>>>>>> The more recent suggestions about making links between
>>>>>>
>>>>> platform&plugins
>>>
>>>> were additional requests to address the rest of the workflow issues
>>>>>>
>>>>> (ie,
>>>>
>>>>> most users prefer to edit inside platforms/ folder because of IDE
>>>>>> integration etc).
>>>>>>
>>>>>> Were you implying anything different here?
>>>>>>
>>>>>>
>>>>>>
>>>>>>> On Fri, Sep 27, 2013 at 6:25 PM, Michal Mocny <mmo...@chromium.org>
>>>>>>>
>>>>>> wrote:
>>>>>
>>>>>>
>>>>>>>  Have we not previously solved the symlink problem in xcode with a
>>>>>>>>
>>>>>>> build
>>>>>
>>>>>> hook, or was that for prepare step?
>>>>>>>>
>>>>>>>> The --link concept doesn't do anything for that platforms ->
>>>>>>>>
>>>>>>> plugins
>>>
>>>> file
>>>>>
>>>>>> mapping.  Its useful for mapping plugins/ to local source, but it
>>>>>>>>
>>>>>>> doesn't
>>>>>
>>>>>> help with the problem Tyler mentions, right?
>>>>>>>>
>>>>>>>> -Michal
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Sep 27, 2013 at 1:20 PM, Braden Shepherdson <
>>>>>>>>
>>>>>>> bra...@chromium.org
>>>>>
>>>>>> wrote:
>>>>>>>>>
>>>>>>>>
>>>>>>>>  Symlinks in platforms/ are a problem because Xcode doesn't
>>>>>>>>>
>>>>>>>> honour
>>>
>>>> them,
>>>>>
>>>>>> at
>>>>>>>>
>>>>>>>>> least last time we tried it.
>>>>>>>>>
>>>>>>>>> I'm much more enthused about the --link concept than any
>>>>>>>>>
>>>>>>>> syncing,
>>>
>>>> though.
>>>>>>>
>>>>>>>> Also if someone wants to sync, they can already use rsync to do
>>>>>>>>>
>>>>>>>> it
>>>
>>>> manually.
>>>>>>>>>
>>>>>>>>> Braden
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Sep 27, 2013 at 11:45 AM, Andrew Grieve <
>>>>>>>>>
>>>>>>>> agri...@chromium.org
>>>>>
>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  I think it'd be good to enumerate our options for workflow
>>>>>>>>>>
>>>>>>>>> before
>>>>
>>>>> we
>>>>>
>>>>>> decided on which to implement (or maybe choose multiple).
>>>>>>>>>>
>>>>>>>>>> Tyler's idea about a sync command seems like it would be
>>>>>>>>>>
>>>>>>>>> handy.
>>>
>>>> Edit
>>>>>
>>>>>> your
>>>>>>>>
>>>>>>>>> plugin files within platforms/, and then run `cordova plugin
>>>>>>>>>>
>>>>>>>>> copychanges
>>>>>>>>
>>>>>>>>> org.my.plugin` to do a reverse copy of the source files back
>>>>>>>>>>
>>>>>>>>> to
>>>
>>>> the
>>>>>
>>>>>> install
>>>>>>>>>
>>>>>>>>>> source location of the plugin. Big caveat though is that you
>>>>>>>>>>
>>>>>>>>> run
>>>
>>>> the
>>>>>
>>>>>> risk
>>>>>>>>
>>>>>>>>> of prepare clobbering your changes. I think that's too killer
>>>>>>>>>>
>>>>>>>>> a
>>>
>>>> risk.
>>>>>
>>>>>>
>>>>>>>>>> Another thought is that we could use symlinks when running
>>>>>>>>>>
>>>>>>>>> prepare.
>>>>>
>>>>>> Have
>>>>>>>>
>>>>>>>>> files within platforms/ symlink to files within plugins/, then
>>>>>>>>>>
>>>>>>>>> symlink
>>>>>>>
>>>>>>>> again back to their original sources. Would this work with
>>>>>>>>>>
>>>>>>>>> editors in
>>>>>
>>>>>> practice? I don't know, but worth exploring. Wikipedia says
>>>>>>>>>>
>>>>>>>>> symlinks
>>>>>
>>>>>> work
>>>>>>>>
>>>>>>>>> on NTFS as of Vista.
>>>>>>>>>>
>>>>>>>>>> Braden / Michael - I think yours is a good idea as well.
>>>>>>>>>>
>>>>>>>>> Although, I
>>>>>
>>>>>> don't
>>>>>>>>>
>>>>>>>>>> think we should encourage people to edit files within
>>>>>>>>>>
>>>>>>>>> plugins/.
>>>
>>>> They
>>>>>
>>>>>> should
>>>>>>>>>
>>>>>>>>>> edit their plugins from install point. We should record the
>>>>>>>>>>
>>>>>>>>> install
>>>>>
>>>>>> path,
>>>>>>>>
>>>>>>>>> and maybe have prepare have a prepare --update-local-plugins.
>>>>>>>>>>
>>>>>>>>>> Any other ideas?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Fri, Sep 27, 2013 at 3:13 PM, Michael Sierra <
>>>>>>>>>>
>>>>>>>>> msie...@adobe.com>
>>>>>
>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  Can you please file JIRAs on doc problems like this?
>>>>>>>>>>>
>>>>>>>>>> Existing
>>>>
>>>>> overview
>>>>>>>>>
>>>>>>>>>> doc says you can use the CLI to bootstrap & hand off to an
>>>>>>>>>>>
>>>>>>>>>> SDK &
>>>>
>>>>> supporting
>>>>>>>>>>
>>>>>>>>>>> platform command-line utilities.  I take your comment to
>>>>>>>>>>>
>>>>>>>>>> mean
>>>
>>>> doc
>>>>>
>>>>>> should
>>>>>>>>>
>>>>>>>>>> better stress that once you start working with platform
>>>>>>>>>>>
>>>>>>>>>> tools
>>>
>>>> downstream,
>>>>>>>>>
>>>>>>>>>> you can't go back to the CLI. Correct?
>>>>>>>>>>>
>>>>>>>>>>> --Mike Sierra
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ______________________________**__________
>>>>>>>>>>> From: Tyler Wilson [twil...@pulse-robotics.com]
>>>>>>>>>>> Sent: Thursday, September 26, 2013 8:19 PM
>>>>>>>>>>> To: dev@cordova.apache.org
>>>>>>>>>>> Subject: Re: Updating plugin code on prepare
>>>>>>>>>>>
>>>>>>>>>>> Re: IDEs: if it is the case that the CLI should not be used
>>>>>>>>>>>
>>>>>>>>>> along
>>>>>
>>>>>> with
>>>>>>>>
>>>>>>>>> an
>>>>>>>>>
>>>>>>>>>> IDE, perhaps the documentation - including Getting Started
>>>>>>>>>>>
>>>>>>>>>> Guides,
>>>>>
>>>>>> etc. -
>>>>>>>>>
>>>>>>>>>> ought to be much clearer about this. Perhaps a big warning
>>>>>>>>>>>
>>>>>>>>>> that
>>>>
>>>>> "Xcode
>>>>>>>>
>>>>>>>>> project files are created by the CLI, but they should not be
>>>>>>>>>>>
>>>>>>>>>> opened
>>>>>
>>>>>> and
>>>>>>>>
>>>>>>>>> used by Xcode. And you definitely should not edit code
>>>>>>>>>>>
>>>>>>>>>> within
>>>
>>>> the
>>>>>
>>>>>> IDE".
>>>>>>>>
>>>>>>>>>
>>>>>>>>>>> I just went to the main documentation site here -
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>
>>>>  http://cordova.apache.org/**docs/en/3.0.0/guide_overview_**
>>> index.md.html#Overview-**anditappearsitonlymentionsthe<http://cordova.apache.org/docs/en/3.0.0/guide_overview_index.md.html#Overview-anditappearsitonlymentionsthe>new
>>>  CLI interface. No mention of the
>>>
>>>> old bin/create method. Seems to me there may be
>>>>>>>>>>>
>>>>>>>>>> communication
>>>
>>>> problem
>>>>>>>
>>>>>>>> here.
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Thanks,
>>>>>>>>>>> Tyler
>>>>>>>>>>>
>>>>>>>>>>> On Sep 26, 2013, at 6:11 PM, Anis KADRI <
>>>>>>>>>>>
>>>>>>>>>> anis.ka...@gmail.com
>>>
>>>>
>>>>>  wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>  @purplecabbage: I have the same workflow but I think the
>>>>>>>>>>>>
>>>>>>>>>>> proposed
>>>>>
>>>>>> solution is a step in the right direction. It would allow
>>>>>>>>>>>>
>>>>>>>>>>> us
>>>
>>>> to
>>>>>
>>>>>> easily
>>>>>>>>>
>>>>>>>>>> develop platform plugins without having to delete
>>>>>>>>>>>>
>>>>>>>>>>> project/create
>>>>>
>>>>>> project/install plugin/uninstall plugin constantly. The
>>>>>>>>>>>>
>>>>>>>>>>> plugin
>>>>
>>>>> would
>>>>>>>>
>>>>>>>>> be packaged (plugin.xml) from day 1 and one can only focus
>>>>>>>>>>>>
>>>>>>>>>>> on
>>>>
>>>>> development.
>>>>>>>>>>>>
>>>>>>>>>>>> As far as IDEs, the answer is simple. You should not use
>>>>>>>>>>>>
>>>>>>>>>>> IDEs
>>>>
>>>>> and
>>>>>
>>>>>> cordova-cli at the same time. Until IDEs are aware of
>>>>>>>>>>>>
>>>>>>>>>>> cordova-cli
>>>>>
>>>>>> there is no point in creating projects with cordova-cli
>>>>>>>>>>>>
>>>>>>>>>>> because
>>>>>
>>>>>> everything gets blown on every build. I am not even sure
>>>>>>>>>>>>
>>>>>>>>>>> we
>>>
>>>> can
>>>>>
>>>>>> make
>>>>>>>>
>>>>>>>>> Xcode aware of cordova-cli. We've already talked about
>>>>>>>>>>>>
>>>>>>>>>>> this
>>>
>>>> prior
>>>>>
>>>>>> to
>>>>>>>>
>>>>>>>>> the 3.0 release and that is why we have the create scripts
>>>>>>>>>>>>
>>>>>>>>>>> and
>>>>
>>>>> plugman
>>>>>>>>>
>>>>>>>>>> approach. You should not be using cordova-cli either if
>>>>>>>>>>>>
>>>>>>>>>>> you're
>>>>
>>>>> doing
>>>>>>>>
>>>>>>>>> some custom native dev that can't be pluginized (changing
>>>>>>>>>>>>
>>>>>>>>>>> the
>>>>
>>>>> main
>>>>>>>
>>>>>>>> Activity.java or AppDelegate.m or whatever). If you're
>>>>>>>>>>>>
>>>>>>>>>>> using
>>>
>>>> cordova-cli just to create a project and then open an IDE
>>>>>>>>>>>>
>>>>>>>>>>> to
>>>
>>>> develop,
>>>>>>>>
>>>>>>>>> you're probably doing it wrong. You should be creating a
>>>>>>>>>>>>
>>>>>>>>>>> native
>>>>>
>>>>>> project and using plugman instead.
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Sep 26, 2013 at 9:01 PM, Michal Mocny <
>>>>>>>>>>>>
>>>>>>>>>>> mmo...@chromium.org
>>>>>>>
>>>>>>>>
>>>>>>>>>  wrote:
>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Sep 26, 2013 at 1:39 PM, Jesse <
>>>>>>>>>>>>>
>>>>>>>>>>>> purplecabb...@gmail.com
>>>>>
>>>>>>
>>>>>>>>  wrote:
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>>>  What does a watch mean?
>>>>>>>>>>>>>> - if I reboot, is it still watched?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> No, this would start a process that lives until you
>>>>>>>>>>>>>
>>>>>>>>>>>> CTRL+C.
>>>
>>>>   You
>>>>>
>>>>>> could
>>>>>>>>>
>>>>>>>>>> have
>>>>>>>>>>>
>>>>>>>>>>>> it run it in the background, or set it to start of
>>>>>>>>>>>>>
>>>>>>>>>>>> startup,
>>>
>>>> but
>>>>>
>>>>>> that
>>>>>>>>
>>>>>>>>> would
>>>>>>>>>>>
>>>>>>>>>>>> be using local system tools, not part of the command
>>>>>>>>>>>>>
>>>>>>>>>>>> itself.
>>>>
>>>>>
>>>>>>>>>>>>> Ideally, "watch" should run "prepare" whenever you would
>>>>>>>>>>>>>
>>>>>>>>>>>> have
>>>>
>>>>> wanted
>>>>>>>>
>>>>>>>>> it
>>>>>>>>>>
>>>>>>>>>>> to.
>>>>>>>>>>>
>>>>>>>>>>>> Though obviously that cannot be perfect, it can be a
>>>>>>>>>>>>>
>>>>>>>>>>>> useful
>>>
>>>> tool
>>>>>
>>>>>> when
>>>>>>>>>
>>>>>>>>>> iterating.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> I think it would be best to consider separating
>>>>>>>>>>>>>>
>>>>>>>>>>>>> development
>>>>
>>>>> from
>>>>>>>
>>>>>>>> packaging
>>>>>>>>>>>
>>>>>>>>>>>> in your use-case for workflow.
>>>>>>>>>>>>>> If I am going to develop featureX as a plugin I would :
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> 1. create a project for a single cordova platform, and
>>>>>>>>>>>>>>
>>>>>>>>>>>>> develop
>>>>>
>>>>>> the
>>>>>>>>
>>>>>>>>> feature
>>>>>>>>>>>
>>>>>>>>>>>> as a native piece, and a js piece.
>>>>>>>>>>>>>> 2. test thoroughly
>>>>>>>>>>>>>> 3. create a project for a second cordova platform, and
>>>>>>>>>>>>>>
>>>>>>>>>>>>> develop
>>>>>
>>>>>> the
>>>>>>>>
>>>>>>>>> native
>>>>>>>>>>>
>>>>>>>>>>>> bit, preserving the js from 1
>>>>>>>>>>>>>> 4. test thoroughly
>>>>>>>>>>>>>> 5. repeat steps 3+4 for any remaining platforms
>>>>>>>>>>>>>> 6. package featureX as a plugin by organizing relevant
>>>>>>>>>>>>>>
>>>>>>>>>>>>> bits
>>>>
>>>>> in
>>>>>
>>>>>> the
>>>>>>>>
>>>>>>>>> correct
>>>>>>>>>>>
>>>>>>>>>>>> folder structure, and adding a plugin.xml
>>>>>>>>>>>>>> 7. test each platform by installing with plugman
>>>>>>>>>>>>>> 8. publish
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> As a plugin developer, that is not my workflow.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Typically for me its:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Write a sample app/manual test for some new feature that
>>>>>>>>>>>>>
>>>>>>>>>>>> isn't
>>>>>
>>>>>> implemented
>>>>>>>>>>>
>>>>>>>>>>>> yet.
>>>>>>>>>>>>> Create a new plugin Foo for iOS & Android, and stub the
>>>>>>>>>>>>>
>>>>>>>>>>>> implementation.
>>>>>>>>>>
>>>>>>>>>>> Implement feature A of plugin Foo for iOS, test, add it
>>>>>>>>>>>>>
>>>>>>>>>>>> for
>>>
>>>> Android,
>>>>>>>>
>>>>>>>>> test.
>>>>>>>>>>>
>>>>>>>>>>>> Implement feature B of plugin Foo for iOS, test, add it
>>>>>>>>>>>>>
>>>>>>>>>>>> for
>>>
>>>> Android,
>>>>>>>>
>>>>>>>>> test.
>>>>>>>>>>>
>>>>>>>>>>>> ...
>>>>>>>>>>>>>
>>>>>>>>>>>>> Usually the js implementation is shared, the auto tests
>>>>>>>>>>>>>
>>>>>>>>>>>> are
>>>
>>>> shared,
>>>>>>>>
>>>>>>>>> and
>>>>>>>>>>
>>>>>>>>>>> the
>>>>>>>>>>>
>>>>>>>>>>>> sample test app is shared.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Sure, I do platform specific stuff for testing and
>>>>>>>>>>>>>
>>>>>>>>>>>> implementation,
>>>>>>>
>>>>>>>> but I
>>>>>>>>>>
>>>>>>>>>>> certainly wouldn't say I do plugin development in
>>>>>>>>>>>>>
>>>>>>>>>>>> platform
>>>
>>>> isolation.
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>> Also, right now we do not have a "plugin create" command,
>>>>>>>>>>>>>
>>>>>>>>>>>> and so
>>>>>
>>>>>> leaving
>>>>>>>>>>
>>>>>>>>>>> the "packaging" step for last doesn't add affect total
>>>>>>>>>>>>>
>>>>>>>>>>>> work.
>>>>
>>>>>   But
>>>>>>>
>>>>>>>> once
>>>>>>>>>
>>>>>>>>>> we
>>>>>>>>>>>
>>>>>>>>>>>> do have such a command, plugins could start packaged, and
>>>>>>>>>>>>>
>>>>>>>>>>>> adding
>>>>>
>>>>>> the
>>>>>>>>
>>>>>>>>> small
>>>>>>>>>>>
>>>>>>>>>>>> changes to plugin.xml as you need them is likely a good
>>>>>>>>>>>>>
>>>>>>>>>>>> way
>>>
>>>> to
>>>>>
>>>>>> go.
>>>>>>>
>>>>>>>>
>>>>>>>>>>>>> Finally, this workflow would get people out of the habit
>>>>>>>>>>>>>
>>>>>>>>>>>> of
>>>
>>>> making
>>>>>>>
>>>>>>>> changes
>>>>>>>>>>>
>>>>>>>>>>>> to the platform artifacts directly.  I'm not sure that
>>>>>>>>>>>>>
>>>>>>>>>>>> can
>>>
>>>> be
>>>>
>>>>> entirely
>>>>>>>>>
>>>>>>>>>> avoided in all cases, but why shouldn't we work towards
>>>>>>>>>>>>>
>>>>>>>>>>>> making
>>>>>
>>>>>> that
>>>>>>>>
>>>>>>>>> easier?
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>  We seem to have this notion come up repeatedly that our
>>>>>>>>>>>>>>
>>>>>>>>>>>>> users +
>>>>>
>>>>>> plugin
>>>>>>>>>>
>>>>>>>>>>> developers are working on multiple platforms at the same
>>>>>>>>>>>>>>
>>>>>>>>>>>>> time,
>>>>>
>>>>>> which
>>>>>>>>>
>>>>>>>>>> I
>>>>>>>>>>
>>>>>>>>>>> think is entirely false.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> Since we differ in opinion, how can we put this to the
>>>>>>>>>>>>>
>>>>>>>>>>>> test?
>>>>
>>>>>
>>>>>>>>>>>>> Also, we specifically make sure all our features address
>>>>>>>>>>>>>
>>>>>>>>>>>> the
>>>>
>>>>> needs
>>>>>>>
>>>>>>>> of
>>>>>>>>>
>>>>>>>>>> those
>>>>>>>>>>>
>>>>>>>>>>>> doing single platform development, so in a world of 3.0+
>>>>>>>>>>>>>
>>>>>>>>>>>> cli, I
>>>>>
>>>>>> really
>>>>>>>>>
>>>>>>>>>> don't see how we can not do the same to address the needs
>>>>>>>>>>>>>
>>>>>>>>>>>> of
>>>>
>>>>> those
>>>>>>>
>>>>>>>> who
>>>>>>>>>
>>>>>>>>>> do
>>>>>>>>>>>
>>>>>>>>>>>> do multi-platform development, especially when we have a
>>>>>>>>>>>>>
>>>>>>>>>>>> good
>>>>
>>>>> proposal
>>>>>>>>>
>>>>>>>>>> of
>>>>>>>>>>>
>>>>>>>>>>>> how to do so and someone willing to do it.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>  I also think we're trying to help the wrong people; If I
>>>>>>>>>>>>>>
>>>>>>>>>>>>> am
>>>>
>>>>> a
>>>>>
>>>>>> developer who
>>>>>>>>>>>
>>>>>>>>>>>> is working on multiple platforms at once, and I have a
>>>>>>>>>>>>>>
>>>>>>>>>>>>> bunch of
>>>>>
>>>>>> devices
>>>>>>>>>>
>>>>>>>>>>> attached, I probably also have the skills to set up my
>>>>>>>>>>>>>>
>>>>>>>>>>>>> own
>>>
>>>> grunt
>>>>>>>
>>>>>>>> continuous
>>>>>>>>>>>
>>>>>>>>>>>> integration system. Setting up tooling for potential
>>>>>>>>>>>>>>
>>>>>>>>>>>>> plugin
>>>>
>>>>> developers
>>>>>>>>>>
>>>>>>>>>>> is
>>>>>>>>>>>
>>>>>>>>>>>> the wrong approach, imho. We should actually just go and
>>>>>>>>>>>>>>
>>>>>>>>>>>>> implement
>>>>>>>>
>>>>>>>>> some new
>>>>>>>>>>>
>>>>>>>>>>>> plugin and evaluate the process instead of creating and
>>>>>>>>>>>>>>
>>>>>>>>>>>>> imposing
>>>>>>>
>>>>>>>> a
>>>>>>>>
>>>>>>>>> specific
>>>>>>>>>>>
>>>>>>>>>>>> workflow.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>> The first part of this argument has some merit, I agree.
>>>>>>>>>>>>>
>>>>>>>>>>>>   We
>>>>
>>>>> the
>>>>>
>>>>>> power-users have found ways to address our problems.
>>>>>>>>>>>>>
>>>>>>>>>>>>   However, I
>>>>>
>>>>>> think
>>>>>>>>>
>>>>>>>>>> that
>>>>>>>>>>>
>>>>>>>>>>>> with this change it means that even the end user can make
>>>>>>>>>>>>>
>>>>>>>>>>>> changes
>>>>>>>
>>>>>>>> to
>>>>>>>>
>>>>>>>>> plugin
>>>>>>>>>>>
>>>>>>>>>>>> folder as they find bugs/etc, and expect to see the
>>>>>>>>>>>>>
>>>>>>>>>>>> change
>>>
>>>> reflected
>>>>>>>>
>>>>>>>>> after
>>>>>>>>>>>
>>>>>>>>>>>> running prepare.  This is principle of least surprise,
>>>>>>>>>>>>>
>>>>>>>>>>>> and
>>>
>>>> just
>>>>
>>>>

Reply via email to