OK, cool.  Thanks to everyone.

On 19/03/2015 11:17, Thomas Mortagne wrote:
> Technically it should not cause any issue. The only think I can think
> of is some people expecting this id to be a XAR and trying to installi
> it.
> 
> On Thu, Mar 19, 2015 at 11:15 AM, Jean SIMARD <[email protected]> wrote:
>> OK, thank you for the precision.  Just one last question on this topic:
>> is this relocation will cause any problem since the module
>> [application-forum] we are moving into a submodule
>> [application-forum-ui] will still exists (because [application-forum]
>> will be now the parent POM, not the XAR anymore).
>> Another way of saying it, we transform the original XAR
>> groupId/artifactId into a POM (and the sources of the XAR are moved into
>> another groupId/artifactId).
>>
>> Thanks,
>>
>> On 19/03/2015 10:54, [email protected] wrote:
>>> Hi Jean,
>>>
>>> On 19 Mar 2015 at 10:46:22, Jean SIMARD 
>>> ([email protected](mailto:[email protected])) wrote:
>>>
>>>> OK, but if we don't keep track of the relocation of groupId/artifactId,
>>>> I wonder how you will be able to manage the upgrade (since it seems it
>>>> is a topic you and Vincent are interested in). Am I missing something?
>>>> Should I put this information in another way somewhere in the root POM
>>>> or in another file?
>>>
>>> Yes I wasn’t talking about Maven Relocation but about XWiki’s EM relocation 
>>> (aka alias or extension features).
>>>
>>> This is how to indicate a relocation in our pom.xml:
>>>
>>>   <properties>
>>>     <xwiki.extension.features>
>>>       <!-- Old names of this module used for retro compatibility when 
>>> resolving dependencies of old extensions -->
>>>       org.xwiki.platform:xwiki-platform-workspace-template-features
>>>     </xwiki.extension.features>
>>>   </properties>
>>>
>>> Thanks
>>> -Vincent
>>>
>>> PS: Side note: I’ve never understood why Thomas decided to use the 
>>> “features” terminology for relocation. Maybe you can explain what you had 
>>> in mind Thomas? :)
>>>
>>>> Sincerely,
>>>>
>>>> On 19/03/2015 10:41, Thomas Mortagne wrote:
>>>>> Vincent was not really talking about Maven relocation specifically but
>>>>> simply how to EM can find the new version of an extension that changed
>>>>> its id.
>>>>>
>>>>> On Thu, Mar 19, 2015 at 10:39 AM, Jean SIMARD wrote:
>>>>>> Hi Vincent,
>>>>>>
>>>>>> I'd like to have more precision on the "relocation" you're talking about.
>>>>>>
>>>>>> For example, we have this at the moment
>>>>>>
>>>>>> + application-forum
>>>>>> | + pom.xml
>>>>>> ->org.xwiki.contrib.forum:application-forum [xar]
>>>>>>
>>>>>> We'd like to transform the hierarchy of Maven modules/submodules into
>>>>>> the following structure
>>>>>>
>>>>>> + application-forum
>>>>>> | + pom.xml -> [pom]
>>>>>> | + application-forum-ui/
>>>>>> | | + pom.xml -> [xar]
>>>>>> | + application-forum-test/
>>>>>> | | + pom.xml -> [pom]
>>>>>> | | + application-forum-test-pageobjects/
>>>>>> | | | + pom.xml -> [jar]
>>>>>> | | | + src/
>>>>>> | | + application-forum-test-tests/
>>>>>> | | | + pom.xml -> [jar]
>>>>>> | | | + src/
>>>>>>
>>>>>> But now, I'm looking at relocation guide on Maven
>>>>>>
>>>>>> https://maven.apache.org/guides/mini/guide-relocation.html#How_to_relocate_a_Maven_2_artifact_to_a_different_groupId
>>>>>>
>>>>>> and I'm not sure of what I need to do. From the link, I understand that
>>>>>> I should do another pom.xml for each old release. Let say I will take
>>>>>> care only of the last release at the moment (1.9.3 for Forum App). Then
>>>>>> I should add a submodule to the root that looks like the following?
>>>>>>
>>>>>> + application-forum
>>>>>> | + pom.xml -> [pom]
>>>>>> | ...
>>>>>> | + application-forum-1.9.3
>>>>>> | | + pom.xml -> [xar?] (see below for the content)
>>>>>>
>>>>>> pom.xml
>>>>>> -----
>>>>>>
>>>>>> 4.0.0
>>>>>> org.xwiki.contrib.forum
>>>>>> application-forum
>>>>>> 1.9.3
>>>>>>
>>>>>>
>>>>>> application-forum-ui
>>>>>>
>>>>>>
>>>>>>
>>>>>> -----
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> On 19/03/2015 09:08, [email protected] wrote:
>>>>>>> Hi Caty,
>>>>>>>
>>>>>>> See below.
>>>>>>>
>>>>>>> On 18 Mar 2015 at 19:29:17, Ecaterina Moraru (Valica) 
>>>>>>> ([email protected](mailto:[email protected])) wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I want to write automated tests for some contrib applications, but I 
>>>>>>>> need
>>>>>>>> you help on some questions.
>>>>>>>>
>>>>>>>> == Prb 1. Folder Structure + Changing IDs ==
>>>>>>>>
>>>>>>>> Currently the majority of applications don't have modules.
>>>>>>>
>>>>>>> You mean submodules I guess since they’re a module (maven module) 
>>>>>>> themselves.
>>>>>>>
>>>>>>>> Also some applications have IDs that don't correspond with the contrib
>>>>>>>> standard: sometimes wrong groupId like 'org.xwiki.contrib.forum', 
>>>>>>>> sometimes
>>>>>>>> random artifactId.
>>>>>>>
>>>>>>> Why would ‘org.xwiki.contrib.forum’ be a wrong group id?
>>>>>>>
>>>>>>> The rule is defined here 
>>>>>>> http://contrib.xwiki.org/xwiki/bin/view/Main/WebHome#HHostingtools and 
>>>>>>> a module can have org.xwiki.contrib or org.xwiki.contrib..
>>>>>>>
>>>>>>>> When wanting to change the groupId for 'org.xwiki.contrib.forum' I was 
>>>>>>>> told
>>>>>>>> that we should change it only if we have a very good reason, otherwise
>>>>>>>> changing the ID will resolve in upgrading problems within the Extension
>>>>>>>> Manager. Unfortunately I don't remember exactly the problem with the
>>>>>>>> changing of the ID, I just know I don't need to do it :) (//sorry 
>>>>>>>> Thomas)
>>>>>>>
>>>>>>> We support relocation so the extension id (groupId+artifactId) can 
>>>>>>> change. The only negative effect is that XWiki will not propose an 
>>>>>>> upgrade automatically when the new version comes out with a new 
>>>>>>> extensionId. (I’d love to brainstorm about finding ways to handle this 
>>>>>>> with Thomas though).
>>>>>>>
>>>>>>>> Example: https://github.com/xwiki-contrib/application-forum
>>>>>>>> Theoretically, wanting to add tests I would need to create two modules:
>>>>>>>> - application-forum-test
>>>>>>>> - application-forum-ui, and move the current sources here.
>>>>>>>> Unfortunately this means a change in the ID.
>>>>>>>>
>>>>>>>> Are 'adding tests' a good reason to change the ID?
>>>>>>>> Should I not change the ID, and just add a test module?
>>>>>>>> - application-forum-test
>>>>>>>> - src/main/resources
>>>>>>>
>>>>>>> I’m in favor of changing the extension id and add relocation (it was 
>>>>>>> done for this purpose). This is what we did in xwiki-platform for a lot 
>>>>>>> of modules.
>>>>>>>
>>>>>>>> == Prb 2. Naming standards ==
>>>>>>>>
>>>>>>>> We have some conventions on contrib.xwiki.org about name of the 
>>>>>>>> project.
>>>>>>>> We should add maybe some more examples on groupId and artifactId.
>>>>>>>>
>>>>>>>> Also when looking at the test modules names, some applications have:
>>>>>>>> - {{full-repository-name}}-tests
>>>>>>>> - {{full-repository-name}}-test
>>>>>>>> - {{partial-repository-name}}-test
>>>>>>>> - {{random-repository-name}}-test
>>>>>>>> - test
>>>>>>>
>>>>>>> Where? AFAIK I’ve been the one doing most of the tests relocation in 
>>>>>>> xwiki-platform and our naming rule has always been the same. For 
>>>>>>> example:
>>>>>>>
>>>>>>> xwiki-platform-faq-test/
>>>>>>> |_ xwiki-platform-faq-test-tests/
>>>>>>> |_ …
>>>>>>>
>>>>>>>> Maybe we should agree also on this and document it.
>>>>>>>> I guess the correct name would be:
>>>>>>>> - {{full-repository-name}}-test
>>>>>>>> -- {{full-repository-name}}-test-pageobjects
>>>>>>>> -- {{full-repository-name}}-test-tests
>>>>>>>> - {{full-repository-name}}-ui
>>>>>>>
>>>>>>> Yes. Some conventions are already documented here:
>>>>>>> http://dev.xwiki.org/xwiki/bin/view/Community/DevelopmentPractices#HBuildBestPractices
>>>>>>>
>>>>>>>> Also if we are 'discovering' some applications that don't correspond 
>>>>>>>> to the
>>>>>>>> standard, do we change them or do we let them be? Since changing means 
>>>>>>>> a
>>>>>>>> change in the ID :P
>>>>>>>
>>>>>>> I’d say we change them.
>>>>>>>
>>>>>>>> Since in theory we should have automated tests for all our 
>>>>>>>> applications,
>>>>>>>> should we add a convention to always create a
>>>>>>>> - {{full-repository-name}}-ui ?
>>>>>>>
>>>>>>> Yes. This is what I do when I create a new "top level" module.
>>>>>>>
>>>>>>>> Additional question: Also when we will transfer from platform to 
>>>>>>>> contrib,
>>>>>>>> are we going to rename the modules?
>>>>>>>
>>>>>>> I think we discussed this and we said we would change the id but not 
>>>>>>> change the package names for now to not break backward compat. Would 
>>>>>>> need to read again the mail thread. In any case we still have some 
>>>>>>> decisions to make on that. I’ve been wanting to do this move but first 
>>>>>>> I wanted to implement the cleanup/removal of xwiki-enterprise to make 
>>>>>>> way for flavors.
>>>>>>>
>>>>>>> Thanks
>>>>>>> -Vincent
>>>>>>>
>>> _______________________________________________
>>> devs mailing list
>>> [email protected]
>>> http://lists.xwiki.org/mailman/listinfo/devs
>>>
>>
>> --
>> Jean Simard
>> [email protected]
>> Research engineer at XWiki SAS
>> http://www.xwiki.com
>> Committer on the XWiki.org project
>> http://www.xwiki.org
>> _______________________________________________
>> devs mailing list
>> [email protected]
>> http://lists.xwiki.org/mailman/listinfo/devs
> 
> 
> 

-- 
Jean Simard
[email protected]
Research engineer at XWiki SAS
http://www.xwiki.com
Committer on the XWiki.org project
http://www.xwiki.org
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to