> Thanks
> -Vincent
>
>>
>>>>>
>>>>> Also there are some uses case for which I don’t understand why
they’re dangerous. Why would it be dangerous for example to uninstall the Tour
Application?
>>>>
>>>
>>> Again you are mixing different things here. The Tour application
>>> should be listed as optional in the default flavor so there is no need
>>> to force anything.
>>>
>>>> At least the ability to uninstall an extension without uninstalling its
dependencies should be a built in feature, do we agree with that?
>>>
>>> Are you sure that's what you want to ask ? That's how it always
worked.
>>>
>>>>
>>>> Thanks
>>>> -Vincent
>>>>
>>>>>
>>>>> Thanks
>>>>> -Vincent
>>>>>
>>>>>> On 9 Jul 2017, at 13:47, Vincent Massol
<vincent(a)massol.net> wrote:
>>>>>>
>>>>>> Hi Thomas/All,
>>>>>>
>>>>>>> On 9 Jul 2017, at 13:28, Thomas Mortagne
<thomas.mortagne(a)xwiki.com> wrote:
>>>>>>>
>>>>>>> On Fri, Jul 7, 2017 at 12:35 PM, Vincent Massol
<vincent(a)massol.net> wrote:
>>>>>>>>
>>>>>>>>> On 7 Jul 2017, at 12:22, Denis Gervalle
<dgl(a)softec.lu> wrote:
>>>>>>>>>
>>>>>>>>> On Fri, Jul 7, 2017 at 12:16, Thomas Mortagne
<thomas.mortagne(a)xwiki.com> wrote:
>>>>>>>>> I really don't understand how you end up with
this reasoning.
>>>>>>>>>
>>>>>>>>> The only one that knows if a dependency is optional
is the developer
>>>>>>>>> I agree.
>>>>>>>>> of the extension so what is a workaround here is the
huge mess
>>>>>>>>> generator you are proposing.
>>>>>>>>>
>>>>>>>>> As I already said 99% of our dependencies are really
not optional, in
>>>>>>>>> practice only a few flavor dependencies are and one
or two other use
>>>>>>>>> cases.
>>>>>>>>>
>>>>>>>>> There is two different subjects that get mixed up
here:
>>>>>>>>> * clearly state in an extension what is absolutely
required to work
>>>>>>>>> and what is a nice to have, this is standard stuff
and this is what we
>>>>>>>>> are talking about here
>>>>>>>>> * hack your way in the extension index to remove an
extension without
>>>>>>>>> removing the extension claiming to require that, this
is at best
>>>>>>>>> something for
http://extensions.xwiki.org/xwiki/bin/view/Extension/Extension+Tweak
>>>>>>>>> Or the UI of EM can provide a big red warning based
dialog to allow admin to overwrite the default behaviour with a message about the risk.
Just best of both world proposal :), but I don’t know how complex it could be. I am also
fine with a Extension Tweak solution.
>>>>>>>>
>>>>>>>> I agree and this is exactly what I was hinting at in my
past reply with:
>>>>>>>>
>>>>>>>> " What if I want to uninstall an extension which is
NOT marked as optional (ie force uninstall at your own risks)?”
>>>>>>>>
>>>>>>>> I disagree that Extension Tweak is enough. This is quite
technical and not installed by default. I’d really prefer that this be a feature of EM
(force install and force uninstall).
>>>>>>>
>>>>>>> So you are saying that going against the recommendations
expressed by
>>>>>>> an extension author is less technical than installing an
extension
>>>>>>> dedicated to dangerous manipulations ?
>>>>>>
>>>>>> When it’s needed the user will not find it (very low
discoverability) and installing an unsupported extension (by the xwiki core dev team) is
also not a great idea for doing anything that can be dangerous.
>>>>>>
>>>>>> It would really be awkward to me that you’d need to install an
extension for being allowing to force install/uninstall an extension. That sounds too
small and weird a use case. This just looks like an Advanced Option that should be there
by default in EM. And here the user doesn’t care about all the other stuff that the
Extension Tweak Extension can do. Personally I dislike this Extension Tweak Extension and
I see it as a temporary bandaid till we get its features inside XWiki. I see it in a
similar way as I see a *Util class in Java (which is bad design); it means that the
features are missing from the default.
>>>>>>
>>>>>> Another good example is the ability to reinstall a SNAPSHOT
extension. Right now you have to use the Extension Tweak extension (to clear the extension
cache) in all wiki where you want to do that and since you do that in dev mode and that in
dev mode you keep having different xwiki instances, it just doesn’t work and the extra
work is too overwhelming. So similarly we should allow force reinstall of an extension,
even for snapshots, and not need the Extension Tweak extension for that. At the very
least, the ability to clear the cache should be built in, in the Admin UI for EM.
>>>>>>
>>>>>> I’m not saying that Extensions that are not useful in general,
just that there are some admin features that needs to be built in, to make life simpler.
And what’s in Extension Tweaks are good candidates.
>>>>>>
>>>>>> Thanks
>>>>>> -Vincent
>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Note that the "Force install” use case is for
example for forcing to install a XAR extension even if the version requirements are not
honored.
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> -Vincent
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> --
>>>>>>>>> Denis Gervalle
>>>>>>>>> SOFTEC sa - CEO
>>>>>>>>>
>>>>>>>>> On Fri, Jul 7, 2017 at 12:01 PM, Eduard Moraru
<enygma2002(a)gmail.com> wrote:
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> It`s very nice to hear we are progressing on this
topic, but I`m not very
>>>>>>>>>> fond of the current solution. Marking
dependencies as optional still puts
>>>>>>>>>> the responsibility on the developer to actually
do that and makes the admin
>>>>>>>>>> dependent on the developer's choice and
discipline. Feels more like a
>>>>>>>>>> workaround that we will end up having to
support.
>>>>>>>>>>
>>>>>>>>>> Working for building whitelists is a tedious
process and we will surely
>>>>>>>>>> miss things, and this is only about things that
we control in the standard
>>>>>>>>>> flavor. What about extensions and their
dependencies?
>>>>>>>>>>
>>>>>>>>>> Sure, as Caty suggests, one option is to make
everything optional by
>>>>>>>>>> default and only have to explicitly specify if a
dependency is mandatory.
>>>>>>>>>>
>>>>>>>>>> Hoping we can get to a point where all the power
is to the admin running
>>>>>>>>>> XWiki, not the developer.
>>>>>>>>>>
>>>>>>>>>> Getting past the above "critique",
it's still very nice to hear that we
>>>>>>>>>> will now have one solution to this old problem.
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> Eduard
>>>>>>>>>>
>>>>>>>>>> On Wed, Jul 5, 2017 at 6:43 PM, Thomas Mortagne
<thomas.mortagne(a)xwiki.com>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> On Wed, Jul 5, 2017 at 5:41 PM, Vincent
Massol <vincent(a)massol.net> wrote:
>>>>>>>>>>>> Hi Thomas,
>>>>>>>>>>>>
>>>>>>>>>>>>> On 5 Jul 2017, at 17:00, Thomas
Mortagne <thomas.mortagne(a)xwiki.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Hi everyone,
>>>>>>>>>>>>>
>>>>>>>>>>>>> I just implemented
https://jira.xwiki.org/browse/XCOMMONS-1229 which
>>>>>>>>>>>>> allows to indicate that a dependency
will be installed by default but
>>>>>>>>>>>>> does not have a string dependency
link with the extension, meaning
>>>>>>>>>>>>> that uninstalling it won't impact
the backward dependencies (so they
>>>>>>>>>>>>> are not really backward dependencies
in that case :)).
>>>>>>>>>>>>
>>>>>>>>>>>> This is very nice. What if I want to
uninstall an extension which is NOT
>>>>>>>>>>> marked as optional (ie force uninstall at
your own risks)?
>>>>>>>>>>>
>>>>>>>>>>> If it's not optional then... it's not
optional and require to
>>>>>>>>>>> uninstall backward dependency.
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> Now we need to decide what exactly is
optional in Standard flavor.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Here are some ideas:
>>>>>>>>>>>>>
>>>>>>>>>>>>> * application-help-center
>>>>>>>>>>>>
>>>>>>>>>>>>> * xwiki-platform-menu-ui
>>>>>>>>>>>>
>>>>>>>>>>>>> * xwiki-platform-wiki-ui-mainwiki
>>>>>>>>>>>>
>>>>>>>>>>>>> * xwiki-platform-office-ui
>>>>>>>>>>>>> * xwiki-platform-invitation-ui
>>>>>>>>>>>>> * xwiki-platform-appwithinminutes-ui
>>>>>>>>>>>>
>>>>>>>>>>>> I think it needs some refactoring first
since the pages it generates
>>>>>>>>>>> still need some pages from AWM.
>>>>>>>>>>>
>>>>>>>>>>> Actually I tough about that and IMO if an
extension has AWM pages it
>>>>>>>>>>> should have a non optional dependency on AWM
(i.e. it would be
>>>>>>>>>>> optional from flavor point of view but non
optional from other
>>>>>>>>>>> extension point of view).
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> * xwiki-platform-linkchecker-ui
>>>>>>>>>>>>> * xwiki-platform-sandbox
>>>>>>>>>>>>
>>>>>>>>>>>>> * xwiki-platform-sharepage-ui
>>>>>>>>>>>>> *
xwiki-platform-distribution-flavor-tour
>>>>>>>>>>>>> * application-templates-ui
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> I did not actually tried to uninstall
those so it's possible it's not
>>>>>>>>>>>>> a good idea to uninstall some of them
right now (hardcoded use
>>>>>>>>>>>>> somewhere maybe).
>>>>>>>>>>>>>
>>>>>>>>>>>>> WDYT ?
>>>>>>>>>>>>
>>>>>>>>>>>> The list sounds good to start with (we
need to test remove them first
>>>>>>>>>>> ofc).
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks
>>>>>>>>>>>> -Vincent
>>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Thomas Mortagne
>>
>>
>>
>> --
>> Thomas Mortagne
>
--
Thomas Mortagne