cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ian Clelland <iclell...@google.com>
Subject Re: Uninstallation of dependency-only plugins
Date Wed, 10 Jul 2013 14:34:32 GMT
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 <iclelland@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 <fil@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" <iclelland@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 <fil@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" <iclelland@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 <fil@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" <iclelland@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?
>> >> >>>
>> >> >>>
>> >> >
>> >>
>>
>>
>

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