FYI plugman 0.9.0 is pushed up to npm and the cli is waiting review by Ian / Google folk. I've pushed up a branch CB-4077 to the cli that integrates with the new plugman. Can you guys check that this branch works properly for any of your flows?
I'll assume everything works out if I don't hear back from you guys and move forward with it later today. On 7/10/13 7:34 AM, "Ian Clelland" <iclell...@google.com> wrote: >The new plugman works for me, when coupled with my CB-4077 branch of cli. > >I noticed that the <project-root>/plugins/<plugin-dir> directories don't >get removed for dangling dependencies -- only the top-level plugin is >removed from there. However, the dependents are removed from all >platforms, >so the uninstallation works correctly. > >I'll rebase my CLI against the newly-refreshed-master-branch and force >push >it to github for you. > >Ian > > >On Tue, Jul 9, 2013 at 10:49 PM, Ian Clelland <iclell...@google.com> >wrote: > >> Sounds good, Fil -- I'll take a look at the updates, and run it through >> its paces here. I'll let you know right away if I find anything unusual. >> >> Ian >> >> >> On Tue, Jul 9, 2013 at 5:31 PM, Filip Maj <f...@adobe.com> wrote: >> >>> I've pushed up a CB-4077 branch of plugman up to the apache git repo. >>>It >>> is a few extra commits on top of yours, Ian, addressing some other >>>issues >>> I noticed during testing. >>> >>> It looks like it is safe to merge into master, but I would like Ian and >>> Google co. to once-over it before we merge into master. >>> >>> Once that¹s in plugman, we can publish a new version of it to npm, >>>update >>> the dependency in cordova-cli, and make sure it is in working order >>>with >>> the new plugman before we proceed with a cli update. >>> >>> Sound good? >>> >>> On 7/5/13 12:01 PM, "Ian Clelland" <iclell...@google.com> wrote: >>> >>> >Oh, don't be sad, Brian ;) >>> > >>> >That's why I only pushed to my fork; looking for constructive review. >>> > >>> >And now I know where the cli and plugman tests are, and they shall be >>> made >>> >better before anything is pushed to a real repo. >>> > >>> > >>> > >>> >On Fri, Jul 5, 2013 at 2:23 PM, Brian LeRoux <b...@brian.io> wrote: >>> > >>> >> =( >>> >> >>> >> Should go without saying but lets not commit stuff without first >>> >> ensuring the tests pass, eh. >>> >> >>> >> >>> >> On Fri, Jul 5, 2013 at 10:05 AM, Filip Maj <f...@adobe.com> wrote: >>> >> > Added comments to the issue thread. The tests no longer pass + >>>we'll >>> >>need >>> >> > new tests to cover your changes. >>> >> > >>> >> > On 7/4/13 8:21 PM, "Ian Clelland" <iclell...@google.com> wrote: >>> >> > >>> >> >>Thanks, Fil, >>> >> >> >>> >> >>Created CB-4077 to track this. I'll start working on separating >>>those >>> >> >>functions. >>> >> >> >>> >> >>Ian >>> >> >> >>> >> >>On Thu, Jul 4, 2013 at 7:08 PM, Filip Maj <f...@adobe.com> wrote: >>> >> >> >>> >> >>> File an issue over at issues.cordova.io, tag plugman, and we can >>> go >>> >> from >>> >> >>> there >>> >> >>> >>> >> >>> On 7/4/13 12:59 PM, "Ian Clelland" <iclell...@google.com> wrote: >>> >> >>> >>> >> >>> >This is the first time I've tried to use the CLI tools with the >>> new >>> >> 3.0 >>> >> >>> >project structure, and I've discovered that I can't uninstall a >>> >>plugin >>> >> >>> >that >>> >> >>> >only has dependencies (no source files, either JS or native) >>> >> >>> > >>> >> >>> >Specifically, I've built a mobilespec app, installing >>> >> >>> >the mobile-spec-dependencies plugin, which does nothing but >>>depend >>> >>on >>> >> >>> >every >>> >> >>> >Cordova core plugin. I want to remove it, so that I can remove >>>and >>> >> >>> >reinstall one of the dependencies, but the CLI tools will not >>> >>remove >>> >> >>>it. >>> >> >>> > >>> >> >>> >Digging through cordova-cli, it looks like "cordova plugin rm" >>> >> >>>attempts to >>> >> >>> >invoke plugman.uninstall once per platform, but >>> >> >>>mobile-spec-dependencies >>> >> >>> >doesn't declare any platforms. >>> >> >>> > >>> >> >>> >plugman.uninstall seems to do two things, which I think should >>>be >>> >> >>> >separated: It removes the plugin from a specific platform, and >>>it >>> >> >>>removes >>> >> >>> >the plugin from the project itself. >>> >> >>> > >>> >> >>> >In the case of a dependency-only plugin, we only need to do the >>> >>second >>> >> >>> >task >>> >> >>> >(which currently doesn't get done). For a regular plugin which >>>is >>> >> >>> >installed >>> >> >>> >in multiple platforms, this also fails, since removing the >>>plugin >>> >>for >>> >> >>>the >>> >> >>> >first platform deletes the plugin source directory, and then >>> >>removal >>> >> >>>for >>> >> >>> >subsequent platforms fails with the error message "[Error: >>>Plugin >>> >> >>><plugin >>> >> >>> >id> not found. Already uninstalled?]" >>> >> >>> > >>> >> >>> >Can anyone explain the technical reasons behind this, or >>>should I >>> >>work >>> >> >>>on >>> >> >>> >separating those functions? >>> >> >>> >>> >> >>> >>> >> > >>> >> >>> >>> >>