On Mon, Jul 10, 2017 at 11:17 AM, Vincent Massol <[email protected]> wrote:
>
>> 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.

Which is why I asked you to reconsider what you wote... Flavor is not
a dependency, it's a backward dependency.

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



-- 
Thomas Mortagne

Reply via email to