+1 to disable this mode until we have a proper UI for it that takes
into account the configured subwiki defaut UI

On Thu, Sep 19, 2013 at 3:25 PM, Guillaume "Louis-Marie" Delhumeau
<[email protected]> wrote:
> It seems we can't fix it for 5.2 because of the time window. Can't we
> remove the "upgrade all wikis" option, for this release?
>
>
> 2013/9/19 Thomas Mortagne <[email protected]>
>
>> On Thu, Sep 19, 2013 at 9:56 AM, Marius Dumitru Florea
>> <[email protected]> wrote:
>> > On Thu, Sep 19, 2013 at 10:34 AM, Thomas Mortagne
>> > <[email protected]> wrote:
>> >> On Thu, Sep 19, 2013 at 9:31 AM, Thomas Mortagne
>> >> <[email protected]> wrote:
>> >>> On Thu, Sep 19, 2013 at 9:10 AM, Marius Dumitru Florea
>> >>> <[email protected]> wrote:
>> >>>> On Wed, Sep 18, 2013 at 4:13 PM, Thomas Mortagne
>> >>>> <[email protected]> wrote:
>> >>>>> On Wed, Sep 18, 2013 at 3:08 PM, Marius Dumitru Florea
>> >>>>> <[email protected]> wrote:
>> >>>>>> On Wed, Sep 18, 2013 at 12:26 PM, Thomas Mortagne
>> >>>>>> <[email protected]> wrote:
>> >>>>>>> On Wed, Sep 18, 2013 at 11:09 AM, Guillaume "Louis-Marie" Delhumeau
>> >>>>>>> <[email protected]> wrote:
>> >>>>>>>> Hi devs.
>> >>>>>>>> I am testing the migration from XEM 4.5.4 to XE 5.2 (local
>> build). Sorin
>> >>>>>>>> has already reported some problems in JIRA.
>> >>>>>>>> For me, the problem occurs when I use the "upgrade all wikis"
>> option.
>> >>>>>>>>
>> >>>>>>>> Let me explain it:
>> >>>>>>>>
>> >>>>>>>> = Prerequisites =
>> >>>>>>>>
>> >>>>>>>> 1. Install a new XEM 4.5.4.
>> >>>>>>>> 2. Create a workspace with WorkspaceManager (called 'workspace1')
>> >>>>>>>> 3. Create a new subwiki with WikiManager (called 'subwiki1') - I
>> create it
>> >>>>>>>> from a XAR template which is xwiki-enterprise-ui-all.
>> >>>>>>>>
>> >>>>>>>> = Upgrade, part 1 =
>> >>>>>>>>
>> >>>>>>>> 1. Replace the webapp with a 5.2.
>> >>>>>>>> 2. Put your own maven directory as the extension repository. (in
>> >>>>>>>> xwiki.properties:
>> >>>>>>>>
>> extension.repositories=local:maven:file://${sys:user.home}/.m2/repository)
>> >>>>>>>> 3. Upgrade the main wiki
>> >>>>>>>>
>> >>>>>>>> It works:
>> >>>>>>>> - For example Main.SpaceIndex is in version 2.1.
>> >>>>>>>> - In the "installed extensions" menu, I can see all extensions
>> correctly
>> >>>>>>>> upgraded.
>> >>>>>>>>
>> >>>>>>>> = Upgrade, part 2 =
>> >>>>>>>>
>> >>>>>>>> == Scenario 1 ==
>> >>>>>>>> 1. In the DW, choose "Upgrade all wikis. Choose this option if
>> all wikis
>> >>>>>>>> are administrated by the same entity.".
>> >>>>>>>> It displays "All extensions are up to date. "
>> >>>>>>>>
>> >>>>>>>> But:
>> >>>>>>>> 'workspace1' is not upgraded:
>> >>>>>>>> - for example Panels.WorkspaceInformationPanel is still in
>> version 1.1
>> >>>>>>>> - In the "installed extensions" menu, I see 'XWiki Enterprise -
>> UI All'. It
>> >>>>>>>> has not been upgraded because there is no new version for it. It
>> has been
>> >>>>>>>> replaced by xwiki-enterprise-ui-wiki-all.
>> >>>>>>>>
>> >>>>>>>> 'subwiki1' is not upgraded:
>> >>>>>>>> - for example Main.SpaceIndex is still in version 1.1
>> >>>>>>>> - In the "installed extensions" menu, I see 'XWiki Enterprise -
>> UI All '
>> >>>>>>>> with the message 'Installed but not valid'. It has not been
>> upgraded
>> >>>>>>>> because there is no new version for it. It has been replaced by
>> >>>>>>>> xwiki-enterprise-ui-common.
>> >>>>>>>>
>> >>>>>>>> == Scenario 2 ==
>> >>>>>>>> 1. In the DW, choose "Upgrade only the current wiki. Choose this
>> option if
>> >>>>>>>> each wiki is administrated by a separate entity. In this case
>> it's best if
>> >>>>>>>> each wiki is upgraded by its owner. ".
>> >>>>>>>> 2. Go to every subwiki, logged as Admin. You will see the DW.
>> >>>>>>>
>> >>>>>>>> 3. Select "Yes, this is an upgrade".
>> >>>>>>>
>> >>>>>>> I don't understand this part, it's not supposed to ask you if it's
>> an
>> >>>>>>> upgrade. You are supposed to get this question only for old
>> previous
>> >>>>>>> wikis where there was no extensions registered corresponding to the
>> >>>>>>> installed pages.
>> >>>>>>>
>> >>>>>>
>> >>>>>>> Marius ?
>> >>>>>>
>> >>>>>> I have this code:
>> >>>>>>
>> >>>>>> #macro (displayDefaultUIExtension $distributionUIId)
>> >>>>>>   #set ($installedVersion =
>> >>>>>> $services.extension.getInstalledExtension($distributionUIId.id,
>> >>>>>> $extensionNamespace))
>> >>>>>>   ...
>> >>>>>>   #set ($discard = "#getExtensionJobStatus($distributionUIId.id
>> >>>>>> $distributionUIId.version.value $distributionUIJobStatus)")
>> >>>>>>   #if (!$installedVersion && (!$distributionUIJobStatus ||
>> >>>>>> $distributionUIJobStatus.state == 'FINISHED'))
>> >>>>>>     ## There is no previous version of the default UI installed on
>> the
>> >>>>>> current wiki and there is no job running for
>> >>>>>>     ## the default UI either.
>> >>>>>>     #set ($documentCount = $xwiki.countDocuments(''))
>> >>>>>>     #if ($distributionState == 'NEW' && $documentCount > 30)
>> >>>>>>       ## There are documents in the database but there is no info
>> >>>>>> about the default UI that was previously installed.
>> >>>>>>       #repairPreviousUI()
>> >>>>>>     #elseif ($distributionState == 'DIFFERENT')
>> >>>>>>       ## TODO: Display the previous distribution UI extension to let
>> >>>>>> the user uninstall it.
>> >>>>>>     #end
>> >>>>>>   #end
>> >>>>>>   ...
>> >>>>>> #end
>> >>>>>>
>> >>>>>> So $distributionUIId is probably
>> >>>>>> 'org.xwiki.enterprise:xwiki-enterprise-ui-wiki' and
>> $installedVersion
>> >>>>>> is null because EM doesn't think it's installed. The installed
>> version
>> >>>>>> is probably xwiki-enterprise-ui. The the upgrade question is
>> displayed
>> >>>>>> because the id of the default UI has changed. Is there are way to
>> >>>>>> improve the condition on my side or should EM detect that
>> >>>>>> 'xwiki-enterprise-ui' is a previous version of
>> >>>>>> 'xwiki-enterprise-ui-wiki'?
>> >>>>>
>> >>>>
>> >>>>> We talked about it already and the issue is that you are searching
>> for
>> >>>>> xwiki-enterprise-ui-wiki id that you will obviously don't find, you
>> >>>>> need to test all features of xwiki-enterprise-ui-wiki. A some point
>> >>>>> you worked around it by putting an hardcoded list somewhere of all
>> the
>> >>>>> previous ids of XE AFAIK so you could probably just update it but the
>> >>>>> best really would be to to it properly by looking at features.
>> >>>>
>> >>>> The hard-coded list of XE/XEM XAR ids is still used but only when
>> >>>> repairing the installed UI (when DW doesn't know which version is
>> >>>> currently installed).
>> >>>>
>> >>>> I'll update the code to take into account all the features
>> (recursively?).
>> >>>
>> >>> The last version is supposed to contains all previous names so no need
>> >>> to do it recursively.
>> >>
>> >
>> >> Hmm actually the best is maybe to simply don't ask anything if there
>> >> is any XAR extension installed. If there is something whatever it is,
>> >> it's an upgrade, done.
>> >
>> > You mean iterating over getInstalledExtensions and checking if there
>> > is one with type XAR?
>>
>> Yep.
>>
>> >
>> >>
>> >>>
>> >>>>
>> >>>> Thanks,
>> >>>> Marius
>> >>>>
>> >>>>>
>> >>>>>>
>> >>>>>> Thanks,
>> >>>>>> Marius
>> >>>>>>
>> >>>>>>>
>> >>>>>>>> Note: if you upgrade a subwiki, the proposed UI will be XWiki
>> Enterprise -
>> >>>>>>>> UI - Common meanwhile if you upgrade a workspace, it will be XWiki
>> >>>>>>>> Enterprise - UI - Wiki. It is normal.
>> >>>>>>>> 4. You will see "Administration Application - 5.2-SNAPSHOT -
>> Installed
>> >>>>>>>> version 4.5.4 is not valid", and the same for several extensions.
>> >>>>>>>> 5. Click on "continue", anyway.
>> >>>>>>>>
>> >>>>>>>> All is OK. In the "installed extensions" menu, I can see all
>> extensions
>> >>>>>>>> correctly upgraded.
>> >>>>>>>>
>> >>>>>>>> = Conclusion =
>> >>>>>>>>
>> >>>>>>>> - The scenario 1 don't work at all.
>> >>>>>>>> - In the scenario 2, it displays "Installed version 4.5.4 is not
>> valid"
>> >>>>>>>> which is disturbing, because everything go right in the end.
>> >>>>>>>>
>> >>>>>>>> As Marius and Thomas explained me:
>> >>>>>>>>
>> >>>>>>>>> When you have an extension installed with version X, and then a
>> new
>> >>>>>>>>> version Y is released but with the id changed, extension manager
>> is not
>> >>>>>>>>> able to detect it. Ideally the EM should detect this and propose
>> the user
>> >>>>>>>>> to upgrade from version X to Y even if the extension id has
>> changed between
>> >>>>>>>>> version X and Y.
>> >>>>>>>>>
>> >>>>>>>>
>> >>>>>>>> How can we solve these issues?
>> >>>>>>>>
>> >>>>>>>> Thanks,
>> >>>>>>>> Guillaume Louis-Marie Delhumeau
>> >>>>>>>> _______________________________________________
>> >>>>>>>> devs mailing list
>> >>>>>>>> [email protected]
>> >>>>>>>> http://lists.xwiki.org/mailman/listinfo/devs
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> --
>> >>>>>>> Thomas Mortagne
>> >>>>>>> _______________________________________________
>> >>>>>>> devs mailing list
>> >>>>>>> [email protected]
>> >>>>>>> http://lists.xwiki.org/mailman/listinfo/devs
>> >>>>>> _______________________________________________
>> >>>>>> devs mailing list
>> >>>>>> [email protected]
>> >>>>>> http://lists.xwiki.org/mailman/listinfo/devs
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> --
>> >>>>> Thomas Mortagne
>> >>>>> _______________________________________________
>> >>>>> devs mailing list
>> >>>>> [email protected]
>> >>>>> http://lists.xwiki.org/mailman/listinfo/devs
>> >>>> _______________________________________________
>> >>>> devs mailing list
>> >>>> [email protected]
>> >>>> http://lists.xwiki.org/mailman/listinfo/devs
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Thomas Mortagne
>> >>
>> >>
>> >>
>> >> --
>> >> Thomas Mortagne
>> >> _______________________________________________
>> >> devs mailing list
>> >> [email protected]
>> >> http://lists.xwiki.org/mailman/listinfo/devs
>> > _______________________________________________
>> > devs mailing list
>> > [email protected]
>> > http://lists.xwiki.org/mailman/listinfo/devs
>>
>>
>>
>> --
>> Thomas Mortagne
>> _______________________________________________
>> devs mailing list
>> [email protected]
>> http://lists.xwiki.org/mailman/listinfo/devs
>>
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs



-- 
Thomas Mortagne
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to