You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "John Casey (JIRA)" <ji...@codehaus.org> on 2008/03/08 00:21:31 UTC

[jira] Created: (MNG-3450) build planning may fail to find forked executions on late-bound plugins

build planning may fail to find forked executions on late-bound plugins
-----------------------------------------------------------------------

                 Key: MNG-3450
                 URL: http://jira.codehaus.org/browse/MNG-3450
             Project: Maven 2
          Issue Type: Bug
          Components: Plugins and Lifecycle
    Affects Versions: 2.1-alpha-1
            Reporter: John Casey


When a plugin cannot be located during the build-planning part of the build (which happens before any of the plugins execute), that plugin's resolution is deferred until the first time it's run in the build. Right before the plugin is scheduled to run, a special internal state-management mojo is executed to retry plugin resolution. If that fails, the build fails.

However, we need to be sure that plugins that are late-bound in this way and that specify forked executions of one type or another have their forked executions included in the build. This would be the first case of a mojo modifying the build plan in which it is executing (to inject a forked execution ahead of the next mojo to run, which is the one that was late-bound).

-- 
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-3450) build planning may fail to find forked executions on late-bound plugins

Posted by "Jason van Zyl (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3450?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=204489#action_204489 ] 

Jason van Zyl commented on MNG-3450:
------------------------------------

This code is gone now.

> build planning may fail to find forked executions on late-bound plugins
> -----------------------------------------------------------------------
>
>                 Key: MNG-3450
>                 URL: http://jira.codehaus.org/browse/MNG-3450
>             Project: Maven 2 & 3
>          Issue Type: Bug
>          Components: Plugins and Lifecycle
>    Affects Versions: 3.0-alpha-1
>            Reporter: John Casey
>            Assignee: John Casey
>
> When a plugin cannot be located during the build-planning part of the build (which happens before any of the plugins execute), that plugin's resolution is deferred until the first time it's run in the build. Right before the plugin is scheduled to run, a special internal state-management mojo is executed to retry plugin resolution. If that fails, the build fails.
> However, we need to be sure that plugins that are late-bound in this way and that specify forked executions of one type or another have their forked executions included in the build. This would be the first case of a mojo modifying the build plan in which it is executing (to inject a forked execution ahead of the next mojo to run, which is the one that was late-bound).

-- 
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-3450) build planning may fail to find forked executions on late-bound plugins

Posted by "John Casey (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-3450?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_126530 ] 

John Casey commented on MNG-3450:
---------------------------------

steps to reproduce:

1. create a basic plugin using archetype
2. Make sure the mojo in this plugin specifies '@execute phase="site"' or something similar, such that its maximum phase will not be satisfied yet by 'clean install'
3. make sure that plugin doesn't exist in any way in the repositories (either local or remote)
4. execute the following (making sure the last mojo invocation is fully qualified):

mvn clean install org.plugin:my-maven-plugin:1.0-SNAPSHOT:touch

Since the plugin isn't resolvable from any repository, the build planner should assign the last task to a late-bound state-management mojo, which will run second-to-last in the build order. Before the test mojo runs, the site phase should be executed, making it possible to check for some basic site files in the target directory, and fail the build if they are missing.

I'll write a test plugin for this when I get a chance, but these steps should show the potential problem, if it exists.

> build planning may fail to find forked executions on late-bound plugins
> -----------------------------------------------------------------------
>
>                 Key: MNG-3450
>                 URL: http://jira.codehaus.org/browse/MNG-3450
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Plugins and Lifecycle
>    Affects Versions: 2.1-alpha-1
>            Reporter: John Casey
>
> When a plugin cannot be located during the build-planning part of the build (which happens before any of the plugins execute), that plugin's resolution is deferred until the first time it's run in the build. Right before the plugin is scheduled to run, a special internal state-management mojo is executed to retry plugin resolution. If that fails, the build fails.
> However, we need to be sure that plugins that are late-bound in this way and that specify forked executions of one type or another have their forked executions included in the build. This would be the first case of a mojo modifying the build plan in which it is executing (to inject a forked execution ahead of the next mojo to run, which is the one that was late-bound).

-- 
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] Updated: (MNG-3450) build planning may fail to find forked executions on late-bound plugins

Posted by "Jason van Zyl (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-3450?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jason van Zyl updated MNG-3450:
-------------------------------

    Fix Version/s:     (was: 2.1-alpha-1)
                   2.1-alpha-2

> build planning may fail to find forked executions on late-bound plugins
> -----------------------------------------------------------------------
>
>                 Key: MNG-3450
>                 URL: http://jira.codehaus.org/browse/MNG-3450
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Plugins and Lifecycle
>    Affects Versions: 2.1-alpha-1
>            Reporter: John Casey
>            Assignee: John Casey
>             Fix For: 2.1-alpha-2
>
>
> When a plugin cannot be located during the build-planning part of the build (which happens before any of the plugins execute), that plugin's resolution is deferred until the first time it's run in the build. Right before the plugin is scheduled to run, a special internal state-management mojo is executed to retry plugin resolution. If that fails, the build fails.
> However, we need to be sure that plugins that are late-bound in this way and that specify forked executions of one type or another have their forked executions included in the build. This would be the first case of a mojo modifying the build plan in which it is executing (to inject a forked execution ahead of the next mojo to run, which is the one that was late-bound).

-- 
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] Updated: (MNG-3450) build planning may fail to find forked executions on late-bound plugins

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-3450?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brett Porter updated MNG-3450:
------------------------------

    Fix Version/s: 2.1-alpha-1

is this a regression?

> build planning may fail to find forked executions on late-bound plugins
> -----------------------------------------------------------------------
>
>                 Key: MNG-3450
>                 URL: http://jira.codehaus.org/browse/MNG-3450
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Plugins and Lifecycle
>    Affects Versions: 2.1-alpha-1
>            Reporter: John Casey
>            Assignee: John Casey
>             Fix For: 2.1-alpha-1
>
>
> When a plugin cannot be located during the build-planning part of the build (which happens before any of the plugins execute), that plugin's resolution is deferred until the first time it's run in the build. Right before the plugin is scheduled to run, a special internal state-management mojo is executed to retry plugin resolution. If that fails, the build fails.
> However, we need to be sure that plugins that are late-bound in this way and that specify forked executions of one type or another have their forked executions included in the build. This would be the first case of a mojo modifying the build plan in which it is executing (to inject a forked execution ahead of the next mojo to run, which is the one that was late-bound).

-- 
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] Closed: (MNG-3450) build planning may fail to find forked executions on late-bound plugins

Posted by "Jason van Zyl (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MNG-3450?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jason van Zyl closed MNG-3450.
------------------------------

       Resolution: Incomplete
    Fix Version/s:     (was: 3.x)

> build planning may fail to find forked executions on late-bound plugins
> -----------------------------------------------------------------------
>
>                 Key: MNG-3450
>                 URL: http://jira.codehaus.org/browse/MNG-3450
>             Project: Maven 2 & 3
>          Issue Type: Bug
>          Components: Plugins and Lifecycle
>    Affects Versions: 3.0-alpha-1
>            Reporter: John Casey
>            Assignee: John Casey
>
> When a plugin cannot be located during the build-planning part of the build (which happens before any of the plugins execute), that plugin's resolution is deferred until the first time it's run in the build. Right before the plugin is scheduled to run, a special internal state-management mojo is executed to retry plugin resolution. If that fails, the build fails.
> However, we need to be sure that plugins that are late-bound in this way and that specify forked executions of one type or another have their forked executions included in the build. This would be the first case of a mojo modifying the build plan in which it is executing (to inject a forked execution ahead of the next mojo to run, which is the one that was late-bound).

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