You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Maria Odea Ching (JIRA)" <ji...@codehaus.org> on 2009/06/08 10:37:42 UTC

[jira] Created: (MNG-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
--------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: MNG-4189
                 URL: http://jira.codehaus.org/browse/MNG-4189
             Project: Maven 2
          Issue Type: Bug
          Components: Artifacts and Repositories, General
    Affects Versions: 2.1.0
            Reporter: Maria Odea Ching


To reproduce this issue:
# Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
# Deploy this in a remote repository
# Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
# Add your remote repository either in the settings or in the pom.
# Build projectB. You will get a successful build.
# Now go back to projectA and remove methodA() from classA. 
# Deploy projectA to the remote repository again.
# Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
# Build projectB. Your build will fail because methodA() was removed.
# Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
# Build projectB. Your build will still fail even though you've set the correct version.


-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

Maria Odea Ching updated MNG-4189:
----------------------------------

    Attachment: mng-4189.zip

Attaching IT for this bug..

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>         Attachments: mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

John Casey updated MNG-4189:
----------------------------

    Fix Version/s:     (was: 2.2.0)
                   2.2.x

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>             Fix For: 2.2.x
>
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

Maria Odea Ching updated MNG-4189:
----------------------------------

    Affects Version/s: 2.0.9

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

Maria Odea Ching updated MNG-4189:
----------------------------------

    Attachment: MNG-4189-core-integration-testing.patch

Attaching patch for core-integration-testing integrating the IT test for this issue..

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>         Attachments: MNG-4189-core-integration-testing.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

Posted by "Maria Odea Ching (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-4189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=180023#action_180023 ] 

Maria Odea Ching commented on MNG-4189:
---------------------------------------

Ok, thanks for reviewing them Benjamin. I'll update the patches. Should I merge this to 2.2.x branch as well after I commit it to 2.1.x branch?

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

Maria Odea Ching closed MNG-4189.
---------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: 2.2.x)
                   2.1.1

Fix committed in 2.1.x branch -r788583 and merged to 2.2.x branch -r788596. 
Integration tests committed in core-integration-testing trunk -r788584. 

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>             Fix For: 2.1.1
>
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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] Issue Comment Edited: (MNG-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

Posted by "Maria Odea Ching (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-4189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=179761#action_179761 ] 

Maria Odea Ching edited comment on MNG-4189 at 6/9/09 5:57 AM:
---------------------------------------------------------------

Attaching MNG-4189-maven-2.1.x.patch to fix this issue. Unit tests included in the patch. Could someone please review this before I commit it to 2.1.x branch? Thanks in advance!

      was (Author: oching):
    Attaching MNG-4189-maven-2.1.x.patch to fix this issue. Unit tests included in the patch. Could someone please review this before I commit it to trunk?
  
> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

Posted by "Maria Odea Ching (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-4189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=179575#action_179575 ] 

Maria Odea Ching commented on MNG-4189:
---------------------------------------

I'm still creating an IT for this, will attach it to this jira issue once completed..

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

Maria Odea Ching updated MNG-4189:
----------------------------------

    Attachment: MNG-4189-maven-2.1.x.patch

Attaching MNG-4189-maven-2.1.x.patch to fix this issue. Unit tests included in the patch. Could someone please review this before I commit it to trunk?

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

Benjamin Bentmann updated MNG-4189:
-----------------------------------

    Fix Version/s: 2.2.1

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>             Fix For: 2.1.1, 2.2.1
>
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

John Casey updated MNG-4189:
----------------------------

    Fix Version/s: 2.2.0

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>             Fix For: 2.2.0
>
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

Posted by "Benjamin Bentmann (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-4189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=180021#action_180021 ] 

Benjamin Bentmann commented on MNG-4189:
----------------------------------------

A comment about the IT: I suggest to remove the checksum files (*.md5, *.sha1) from the test repository and just setup the repo to ignore the checksums. Files that are not vital for a test otherwise simply cause IO and slow down resource copying/extraction during testing. This is not relevant for a single test but we approach 400 ITs so there's a certain scaling factor to consider.

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

Posted by "Benjamin Bentmann (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MNG-4189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=180027#action_180027 ] 

Benjamin Bentmann commented on MNG-4189:
----------------------------------------

bq. Should I merge this to 2.2.x branch as well
Yes, please, I don't see a reason to not do so.

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

-- 
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-4189) Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository

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

Benjamin Bentmann updated MNG-4189:
-----------------------------------

    Attachment: MNG-4189.patch

With your patch, we effectively have
{code:java}
boolean resolved = false;
if ( !destination.exists() || force )
{
    ...
    resolved = true;
}
else if ( destination.exists() )     // Note that this is equivalent to just "else"
{
    ...
    resolved = true;
}
{code}
In other words, the flag {{resolved}} will always be {{true}}. This in turn will make {{if ( resolved || !copy.exists() )}} equivalent to {{if (true)}}, thereby always executing the {{FileUtils.copyFile(destination, copy)}}. Hence, Maven will end up copying each and every snapshot dependency. For bigger projects, I can imagine this accumulates to significant IO, slowing down the build.

The attached patch proposes to compare the file's timestamp&size instead of using the {{resolved}} flag. This should also ensure that artifact-<baseVersion>.jar matches the last resolved timestamp version but still avoids unnecessary file copies in case nothing changed.

> Maven not picking up specific timestamped version dependency when a later timestamped version was downloaded and already present in the local repository
> --------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-4189
>                 URL: http://jira.codehaus.org/browse/MNG-4189
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9, 2.1.0
>            Reporter: Maria Odea Ching
>            Assignee: Maria Odea Ching
>         Attachments: MNG-4189-core-integration-testing.patch, MNG-4189-maven-2.1.x.patch, MNG-4189.patch, mng-4189.zip
>
>
> To reproduce this issue:
> # Create a project (let's call this projectA)  with a class named ClassA having a method named methodA(). Set the version as 1.0-SNAPSHOT and set uniqueVersion=true.
> # Deploy this in a remote repository
> # Create another project (let's call this projectB) which has a dependency on projectA. Set the dependency's version to the specific timestamped version when projectA was deployed in step 2. Create a class named ClassB and add a method which invokes ClassA's methodA(). 
> # Add your remote repository either in the settings or in the pom.
> # Build projectB. You will get a successful build.
> # Now go back to projectA and remove methodA() from classA. 
> # Deploy projectA to the remote repository again.
> # Update the dependency version of projectA in projectB's pom.xml. Set it to the latest timestamp version.
> # Build projectB. Your build will fail because methodA() was removed.
> # Revert the dependency version of projectA in projectB's pom.xml. Set it to the same value you've set in step 3.
> # Build projectB. Your build will still fail even though you've set the correct version.

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