> On 10 Jul 2017, at 11:09, Thomas Mortagne <[email protected]> wrote:
> 
> On Sun, Jul 9, 2017 at 2:00 PM, Vincent Massol <[email protected]> wrote:
>> 
>>> On 9 Jul 2017, at 13:55, Vincent Massol <[email protected]> wrote:
>>> 
>>> Note to be clear: I prefer having the feature in the Extension Tweak 
>>> Extension that not having it at all ;) But I also prefer having it by 
>>> default in EM as an advanced. The main use case/need I see is 
>>> installing/uninstalling XAR applications and those are not really dangerous 
>>> in general.
>>> 
>>> I also agree with you that we need to try preserving the stability of XWiki 
>>> as much as possible. We could even make some checks and only allow some use 
>>> cases (the XAR ones).
>>> 
>>> 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.

I know, but I’m taking it as an example. I’m considering the case when a user 
wants to uninstall an extension not marked as optional.

> 
>> 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.

Are you sure that removing it won’t remove the flavor? AFAIR this was the issue 
before for extensions bundled in the flavor.

Thanks
-Vincent

> 
>> 
>> Thanks
>> -Vincent
>> 
>>> 
>>> Thanks
>>> -Vincent
>>> 
>>>> On 9 Jul 2017, at 13:47, Vincent Massol <[email protected]> wrote:
>>>> 
>>>> Hi Thomas/All,
>>>> 
>>>>> On 9 Jul 2017, at 13:28, Thomas Mortagne <[email protected]> 
>>>>> wrote:
>>>>> 
>>>>> On Fri, Jul 7, 2017 at 12:35 PM, Vincent Massol <[email protected]> 
>>>>> wrote:
>>>>>> 
>>>>>>> On 7 Jul 2017, at 12:22, Denis Gervalle <[email protected]> wrote:
>>>>>>> 
>>>>>>> On Fri, Jul 7, 2017 at 12:16, Thomas Mortagne 
>>>>>>> <[email protected]> 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 <[email protected]> 
>>>>>>> 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 
>>>>>>>> <[email protected]>
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>> On Wed, Jul 5, 2017 at 5:41 PM, Vincent Massol <[email protected]> 
>>>>>>>>> wrote:
>>>>>>>>>> Hi Thomas,
>>>>>>>>>> 
>>>>>>>>>>> On 5 Jul 2017, at 17:00, Thomas Mortagne <[email protected]>
>>>>>>>>> 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

Reply via email to