Hi Sergiu,
On Oct 14, 2011, at 3:50 AM, Sergiu Dumitriu wrote:
On Tue, May 31, 2011 at 08:56, Florin Ciubotaru
<florinciu(a)gmail.com> wrote:
Hi,
Reviving the thread with a late -1.
Reviving this thread again after the release of 3.2.
I'd like to get this problem fixed, so here's a proposal:
https://github.com/xwiki/xwiki-platform/tree/master/xwiki-platform-core/xwi…
becomes
https://github.com/xwiki/platform/tree/master/core/cache/api
The current strategy is to get longer and longer directory names, by
copying the parent directory name and adding a suffix to it. While
this keeps the current artifact ID in sync with the directory it sits
in, it creates redundancy and is much too verbose. Plus, it creates
the checkout problem on Windows.
+0 (I'm fine with long directory name but I understand why some people wouldn't
like them - They display very nicely in my IDE BTW).
Note that this is a huge reorganization you're proposing and thus if we agree about it
we'll need to properly plan it in a given XE release (i.e. put it in the roadmap), and
ensure we'll have the time to do it + do the other stuff we'll have decided.
The proposed strategy is to remove all redundancy and
instead have the
artifact ID in sync with the directory structure starting from the git
repository root.
Still, there are a few things I'd like some feedback on:
1. Do we keep "xwiki" in the repository name or not?
a) The "xwiki" part of the artifact ID is found in the organization
name, so the repository name skips it: "platform", "rendering"...
b) The organization name isn't going to be found on the user's
filesystem, so it makes sense to keep it in the repository name:
"xwiki-platform", "xwiki-rendering"…
From the two I prefer 1b but I'm fine with both.
2. What do we do with the "core+tools" split
of some of the repositories?
a) Keep it, which means that we'll not have 100% sync with some of the
artifact ID, since "core" is not part of the artifactIds.
b) Keep it and change the artifactIds of the core modules to include it
c) Move the "core" modules to the root of the repository, keeping
"tools" grouped under the tools subdirectory
There's a problem. We have POM configurations that should only be applied to core
modules and not to tools. I'm not sure how to best solve this.
Need to think a bit more about it.
Personally, I'm:
* +1 for 1a, +0 for 1b; the argument for b is not really valid, since
users can change the directory name where their clone is going to be
created, and most developers usually create a top level directory to
hold the XWiki repositories by themselves anyway
* -0 for 2a, since I'd like to have a clear and simple rule for
mapping artifact IDs to directories, without having to add an
"...except if the directory is named core..." exception to this rule;
-0 for 2b, since I prefer not to change artifact IDs so often between
versions; +1 for 2c, since it's going to bring the most important
modules closer to the root.
So, the one clear and simple rule to follow for naming directories and
artifacts is:
Assuming you checked out the XWiki repositories in a common folder
called "xwiki", then the artifactId of any pom.xml file is the same as
the path from the top "xwiki" directory to the current directory, with
dashes between the names.
3) You forgot that we need to also decide on plural vs singular.
For example right now the directory for tools is *-tools" but the artifact id for
tool modules is *-tool-*
The Same applies in lots of other places too (like macros, syntaxes, etc).
So to follow your rule we'll need to decide if we want to:
a) rename the aggregator module's artifact id to singular
b) rename all submodule artifact id to use the plural form
I prefer 3a.
> On Wed, Apr 6, 2011 at 11:51 AM, Denis Gervalle <dgl(a)softec.lu> wrote:
>
>> +0, using artifactid is longer, but a clear rule. And you have
>> auto-completion and IDE, so why fear longer name ?
>>
> There an issue long paths on Windows as mentioned here:
>
http://xwiki.475771.n2.nabble.com/Unable-to-clone-platform-repository-on-wi…
>
> Florin Ciubotaru
>
>>
>> Denis
>>
>> On Tue, Apr 5, 2011 at 15:49, Marius Dumitru Florea <
>> mariusdumitru.florea(a)xwiki.com> wrote:
>>
>>> Same as Sergiu, I prefer shorter names but artifactId is not that bad. So
>>> 0.
>>>
>>> Thanks,
>>> Marius
>>>
>>> On 04/05/2011 02:19 PM, Jerome Velociter wrote:
>>>> On Tue, Apr 5, 2011 at 11:36 AM, Sergiu Dumitriu<sergiu(a)xwiki.com>
>>> wrote:
>>>>> On 04/05/2011 11:03 AM, Vincent Massol wrote:
>>>>>> Hi devs,
>>>>>>
>>>>>> The proposal is to use artifactid as directory names.
>>>>>>
>>>>>> Note that this is what I did for commons and rendering when I did
the
>>> move to top level project. You can check how it looks like here:
>>>>>>
http://svn.xwiki.org/svnroot/xwiki/commons/
>>>>>>
http://svn.xwiki.org/svnroot/xwiki/rendering/
>>>>>>
>>>>>> I suggest we keep one strategy only for consistency.
>>>>>>
>>>>>> Some discussion here too:
>>>>>>
>>>
>>
http://www.sonatype.com/people/2011/01/maven-tip-project-directories-and-ar…
>>>>>>
>>>>>> I know there are some cons (see my comment in the link above)
but
>>> overall I find it simple to implement and with autocompletion not such a
>> big
>>> issue.
>>>>>>
>>>>>> WDYT?
>>>>>
>>>>> 0. I'd prefer shorter names, but I don't have a strong
preference for
>>>>> it. Either way works.
>>>>
>>>> Same as Sergiu, I would prefer shorter names ; but no strong feelings
>>> either.
>>>> 0
>>>>
>>>> Jerome
>>>>
>>>>>
>>>>>> If you don't like this then please propose an alternative
solution
>> and
>>> remember that we'll need to refactor commons and rendering in this case
>> too.
>>>>>>
>>>>>> Thanks
>>>>>> -Vincent