[jira] Commented: (MNG-5000) [regression] child distributionManagment.site.url not correct in a flat directory layout when child's artifactId doesn't match its module name

2011-03-08 Thread Benjamin Bentmann (JIRA)

[ 
http://jira.codehaus.org/browse/MNG-5000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=259315#action_259315
 ] 

Benjamin Bentmann commented on MNG-5000:


I already mentioned {{getModulePathAdjustment()}}.

> [regression] child distributionManagment.site.url not correct in a flat 
> directory layout when child's artifactId doesn't match its module name
> --
>
> Key: MNG-5000
> URL: http://jira.codehaus.org/browse/MNG-5000
> Project: Maven 2 & 3
>  Issue Type: Bug
>Affects Versions: 3.0.2
> Environment: windows
>Reporter: Stefan Hansel
>Assignee: Benjamin Bentmann
> Fix For: 3.0.3
>
> Attachments: artifact-id-testcase.zip
>
>
> There is a multimodule flat project structure:
> root
> module1
> module2
> module1 has an artifactID of 'module1'  (same as directory name)
> modulu2 has an artifactID of 'module-2' (different to directory name)
> After a 'mvn site-deploy' the generated report has the folder structure:
> /root
> /root/module-2
> /module1
> So based on the artifactID the submodules are created as a child of the root 
> - or not.
> This is at least inconsistent and should be changed to be handled always the 
> same - independent of the artifactID.
> This is also important for other plugins (i.e. the dashboard plugin).
> They seem to have some hardcoded directory structure (preferring submodules 
> as childs of the root report). 
> Due to this bug (see http://jira.codehaus.org/browse/MOJO-1630) the links 
> between reports there still don't work as long as artifactID=module's 
> directory. 
> Attached you will find a testcase (based on maven3, but can also be used with 
> maven2 when the version of the site-plugin is changed).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (MNG-5000) [regression] child distributionManagment.site.url not correct in a flat directory layout when child's artifactId doesn't match its module name

2011-03-08 Thread Lukas Theussl (JIRA)

[ 
http://jira.codehaus.org/browse/MNG-5000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=259314#action_259314
 ] 

Lukas Theussl commented on MNG-5000:


I'm still confused about this... Benjamin: what's the actual algorithm to 
calculate the effective url if it gets inherited? The current [site 
docs|http://maven.apache.org/plugins/maven-site-plugin/usage.html] say:

{noformat}
If subprojects inherit the site URL from a parent POM, they will automatically 
append their  to form their effective deployment location.
{noformat}

This is what I always had in mind but it is obviously not correct for the 
attached test project (the modules get deployed into the same directory as 
root, instead of having their artifactId appended). At least the behavior is 
consistent now AFAIS so I guess the docs need to be adjusted. 

> [regression] child distributionManagment.site.url not correct in a flat 
> directory layout when child's artifactId doesn't match its module name
> --
>
> Key: MNG-5000
> URL: http://jira.codehaus.org/browse/MNG-5000
> Project: Maven 2 & 3
>  Issue Type: Bug
>Affects Versions: 3.0.2
> Environment: windows
>Reporter: Stefan Hansel
>Assignee: Benjamin Bentmann
> Fix For: 3.0.3
>
> Attachments: artifact-id-testcase.zip
>
>
> There is a multimodule flat project structure:
> root
> module1
> module2
> module1 has an artifactID of 'module1'  (same as directory name)
> modulu2 has an artifactID of 'module-2' (different to directory name)
> After a 'mvn site-deploy' the generated report has the folder structure:
> /root
> /root/module-2
> /module1
> So based on the artifactID the submodules are created as a child of the root 
> - or not.
> This is at least inconsistent and should be changed to be handled always the 
> same - independent of the artifactID.
> This is also important for other plugins (i.e. the dashboard plugin).
> They seem to have some hardcoded directory structure (preferring submodules 
> as childs of the root report). 
> Due to this bug (see http://jira.codehaus.org/browse/MOJO-1630) the links 
> between reports there still don't work as long as artifactID=module's 
> directory. 
> Attached you will find a testcase (based on maven3, but can also be used with 
> maven2 when the version of the site-plugin is changed).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (MNG-5000) [regression] child distributionManagment.site.url not correct in a flat directory layout when child's artifactId doesn't match its module name

2011-02-23 Thread Benjamin Bentmann (JIRA)

[ 
http://jira.codehaus.org/browse/MNG-5000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=257415#action_257415
 ] 

Benjamin Bentmann commented on MNG-5000:


bq. I don't understand why this should be the case, are there any docs or 
examples you could point me to?

http://svn.apache.org/repos/asf/maven/maven-2/tags/maven-2.2.1/maven-project/src/main/java/org/apache/maven/project/MavenProject.java,
 getModulePathAdjustment() starts with two nice FIXME comments that outline the 
design flaw.

bq. The state of a pom should be uniquely specified by its maven coordinates 
and those of its parent, not by the module structure of the build

Yes this would be the ideal but the bug raised here demands to consider the 
directory name in the local project structure which is lost once the POMs got 
installed/deployed to a repo. When I investigated the bug, I was originally 
tempted to close it as won't fix because of the irreproducibility it drags in 
but then again, this entire URL inheritance/adjustment feature is broken itself 
so I stopped bothering and just restored the status quo as in 2.x.

> [regression] child distributionManagment.site.url not correct in a flat 
> directory layout when child's artifactId doesn't match its module name
> --
>
> Key: MNG-5000
> URL: http://jira.codehaus.org/browse/MNG-5000
> Project: Maven 2 & 3
>  Issue Type: Bug
>Affects Versions: 3.0.2
> Environment: windows
>Reporter: Stefan Hansel
>Assignee: Benjamin Bentmann
> Fix For: 3.0.3
>
> Attachments: artifact-id-testcase.zip
>
>
> There is a multimodule flat project structure:
> root
> module1
> module2
> module1 has an artifactID of 'module1'  (same as directory name)
> modulu2 has an artifactID of 'module-2' (different to directory name)
> After a 'mvn site-deploy' the generated report has the folder structure:
> /root
> /root/module-2
> /module1
> So based on the artifactID the submodules are created as a child of the root 
> - or not.
> This is at least inconsistent and should be changed to be handled always the 
> same - independent of the artifactID.
> This is also important for other plugins (i.e. the dashboard plugin).
> They seem to have some hardcoded directory structure (preferring submodules 
> as childs of the root report). 
> Due to this bug (see http://jira.codehaus.org/browse/MOJO-1630) the links 
> between reports there still don't work as long as artifactID=module's 
> directory. 
> Attached you will find a testcase (based on maven3, but can also be used with 
> maven2 when the version of the site-plugin is changed).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (MNG-5000) [regression] child distributionManagment.site.url not correct in a flat directory layout when child's artifactId doesn't match its module name

2011-02-22 Thread Lukas Theussl (JIRA)

[ 
http://jira.codehaus.org/browse/MNG-5000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=257384#action_257384
 ] 

Lukas Theussl commented on MNG-5000:


bq. such a layout is a recipe for trouble as it results in effective URLs that 
depend on the source of the POM (project vs repo)

If this is true then there must be something wrong with Maven... ;)

bq. it would see different URLs than those used when building the project

I don't understand why this should be the case, are there any docs or examples 
you could point me to? The state of a pom should be uniquely specified by its 
maven coordinates and those of its parent, not by the module structure of the 
build. In other words, why shouldn't it be possible to move a module into a 
different directory, without changing the module's identity?

> [regression] child distributionManagment.site.url not correct in a flat 
> directory layout when child's artifactId doesn't match its module name
> --
>
> Key: MNG-5000
> URL: http://jira.codehaus.org/browse/MNG-5000
> Project: Maven 2 & 3
>  Issue Type: Bug
>Affects Versions: 3.0.2
> Environment: windows
>Reporter: Stefan Hansel
>Assignee: Benjamin Bentmann
> Fix For: 3.0.3
>
> Attachments: artifact-id-testcase.zip
>
>
> There is a multimodule flat project structure:
> root
> module1
> module2
> module1 has an artifactID of 'module1'  (same as directory name)
> modulu2 has an artifactID of 'module-2' (different to directory name)
> After a 'mvn site-deploy' the generated report has the folder structure:
> /root
> /root/module-2
> /module1
> So based on the artifactID the submodules are created as a child of the root 
> - or not.
> This is at least inconsistent and should be changed to be handled always the 
> same - independent of the artifactID.
> This is also important for other plugins (i.e. the dashboard plugin).
> They seem to have some hardcoded directory structure (preferring submodules 
> as childs of the root report). 
> Due to this bug (see http://jira.codehaus.org/browse/MOJO-1630) the links 
> between reports there still don't work as long as artifactID=module's 
> directory. 
> Attached you will find a testcase (based on maven3, but can also be used with 
> maven2 when the version of the site-plugin is changed).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] Commented: (MNG-5000) [regression] child distributionManagment.site.url not correct in a flat directory layout when child's artifactId doesn't match its module name

2011-02-20 Thread Benjamin Bentmann (JIRA)

[ 
http://jira.codehaus.org/browse/MNG-5000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=256949#action_256949
 ] 

Benjamin Bentmann commented on MNG-5000:


You're right about this being a core issue, I missed to recognize the 
discrepancy in the module-2 project, fixed in 
[r1072613|http://svn.apache.org/viewvc?view=revision&revision=1072613].

The cause of the issue was that module-2 has a different artifactId than its 
module name. Let me stress that such a layout is a recipe for trouble as it 
results in effective URLs that depend on the source of the POM (project vs 
repo), i.e. if somebody (e.g. a plugin) was to construct the POM of this 
project from the repository, it would see different URLs than those used when 
building the project. The same problem would also arise during local project 
building when URLs are inherited from a grand-parent via one or more 
intermediate parents and any of those parents is resolved from the repo. For 
this reason, it's highly recommended to synchronize the module name with the 
artifactId.

> [regression] child distributionManagment.site.url not correct in a flat 
> directory layout when child's artifactId doesn't match its module name
> --
>
> Key: MNG-5000
> URL: http://jira.codehaus.org/browse/MNG-5000
> Project: Maven 2 & 3
>  Issue Type: Bug
>Affects Versions: 3.0.2
> Environment: windows
>Reporter: Stefan Hansel
>Assignee: Benjamin Bentmann
> Fix For: 3.0.3
>
> Attachments: artifact-id-testcase.zip
>
>
> There is a multimodule flat project structure:
> root
> module1
> module2
> module1 has an artifactID of 'module1'  (same as directory name)
> modulu2 has an artifactID of 'module-2' (different to directory name)
> After a 'mvn site-deploy' the generated report has the folder structure:
> /root
> /root/module-2
> /module1
> So based on the artifactID the submodules are created as a child of the root 
> - or not.
> This is at least inconsistent and should be changed to be handled always the 
> same - independent of the artifactID.
> This is also important for other plugins (i.e. the dashboard plugin).
> They seem to have some hardcoded directory structure (preferring submodules 
> as childs of the root report). 
> Due to this bug (see http://jira.codehaus.org/browse/MOJO-1630) the links 
> between reports there still don't work as long as artifactID=module's 
> directory. 
> Attached you will find a testcase (based on maven3, but can also be used with 
> maven2 when the version of the site-plugin is changed).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira