I've some concerns about linking workflow in Windows.
Having admin rights in a cmd prompt is not desirable - there are many cases 
where a user might not have the rights. I'm currently investigating `Junctions` 
to see if it will work for this scenario. Alternatively we can do the trick 
Jesse suggested earlier for Windows. I'll follow up with a PR later to enable 
this for Windows devs. 

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Andrew Grieve
Sent: Monday, January 26, 2015 8:50 AM
To: Andrew Grieve
Cc: dev
Subject: Re: FYI: Created a plugin to help with local plugin development

And... now:

    createmobilespec.sh --linkplatforms

and

    createmobilespec.sh --link

is and alias for

    createmobilespec.sh --linkplugins --linkplatforms

So, for iOS and Android, this will create a project where you can edit native 
files in both plugins and platform and the changes will be reflected in 
cordova-ios, cordova-android, cordova-plugin-foo* repos!

Also - looks like I had accidentally hardcoded --browserify to be on on 
Thursday.
Fixed now, but if you noticed mobilespec being funny, it's because --browserify 
was on.



On Thu, Jan 22, 2015 at 10:30 PM, Andrew Grieve <[email protected]>
wrote:

> Implemented the iOS approach:
> https://issues.apache.org/jira/browse/CB-8354
>
>     createmobilespec.sh --linkplugins --android --ios
>
> This lets you (after command-line building once in Android's case):
> 1. open the project in Android Studio or Xcode 2. edit plugin .java / 
> .m / .h 3. see the change reflected in your local cordova-plugin-foo 
> directories
>
> Also added:
>
>     createmobilespec.sh --browserify
>
> which does what you think it does.
>
>
> On Mon, Jan 5, 2015 at 9:49 PM, Andrew Grieve <[email protected]>
> wrote:
>
>> Thought about Windows, but didn't test on it. Figured since --link 
>> was a hot-off-the-press flag, that if there were bugs with it we 
>> could keep iterating.
>>
>> iOS approach makes sense to me. I've added it to the JIRA.
>>
>> On Mon, Jan 5, 2015 at 6:53 PM, Jesse <[email protected]> wrote:
>>
>>> Andrew, did you test your changes in Android Studio for Windows? I 
>>> am curious how well symlinks work there.
>>> Visual Studio and XCode both support adding file/folder references, 
>>> which would mean that saving a changed plugin native file would save 
>>> it to it's original location.  This is the way I have typically developed 
>>> plugins:
>>> - install once
>>> - change file paths in the IDE to point to the plugin-repo directly
>>> - debug / iterate / add functionality in the IDE
>>> - once satisfied, remove the plugin, and re-install the way a mortal 
>>> user would, smoke test
>>> - publish
>>>
>>> essentially, avoiding constant re/un/installing
>>>
>>>
>>> @purplecabbage
>>> risingj.com
>>>
>>> On Mon, Jan 5, 2015 at 12:56 PM, Andrew Grieve 
>>> <[email protected]>
>>> wrote:
>>>
>>> > Along these lines, I likewise got frustrated with my workflow and
>>> added a
>>> > new feature to "cordova plugin add --link".
>>> >
>>> > Instead of just creating symlink in the plugins/ directory, it now 
>>> > also creates symlinks for .java files, so that you can edit plugin 
>>> > .java
>>> files
>>> > in Android Studio, and hitting save will cause the original plugin
>>> .java
>>> > file to be updated!
>>> >
>>> > Worth experimenting with for other platforms as well I think, but 
>>> > this setup does require the IDE & build tools to play nicely with 
>>> > symlinks (which is why I did it for Android only).
>>> >
>>> > https://issues.apache.org/jira/browse/CB-8244.
>>> >
>>> > On Mon, Dec 1, 2014 at 5:13 PM, Michal Mocny <[email protected]>
>>> wrote:
>>> >
>>> > > Took the opportunity to use our new plugin hooks and created a
>>> plugin to
>>> > > automate a tedious task I've been doing a lot of recently: 
>>> > > plugin re-installation.
>>> > >
>>> > > https://github.com/mmocny/cordova-plugin-plugin-auto-upgrade
>>> > >
>>> > > As per the README:
>>> > > ================
>>> > >
>>> > > This plugin with automatically upgrade (re-install) a set of 
>>> > > plugins (specified by you) before every cordova prepare. This is 
>>> > > useful if
>>> you
>>> > are
>>> > > doing plugin development and would like to automatically 
>>> > > synchronize
>>> your
>>> > > app with any changes made to your plugin.
>>> > >
>>> > > Install the plugin: cordova plugin add 
>>> > > org.apache.cordova.labs.pluginAutoUpgrade
>>> > >
>>> > > At root of your app, create a pluginAutoUpgrade.json file, which
>>> looks
>>> > > like:
>>> > >
>>> > > {
>>> > >   "PLUGIN_ID": "PLUGIN_INSTALL_PATH",
>>> > >   "PLUGIN_ID2": "PLUGIN_INSTALL_PATH"
>>> > > }
>>> > >
>>> > > ================
>>> > >
>>> > > This is useful if you are making changes to a plugin inside the
>>> plugin's
>>> > > directory structure.
>>> > >
>>> > > For more meaty plugin work, you are possibly better off making 
>>> > > native changes inside platforms/ and js changes inside plugins/, 
>>> > > and being
>>> very
>>> > > careful to not clobber your work (or use the build/run scripts
>>> directly
>>> > to
>>> > > skip prepare entirely).  I'm considering improving that workflow 
>>> > > as
>>> well.
>>> > >
>>> > > For now, I've found this plugin useful for minor plugin work.
>>> Sharing in
>>> > > case you do, too.
>>> > >
>>> > > -Michal
>>> > >
>>> >
>>>
>>
>>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to