[Building Sakai] Problem with pom.xml at root of edu-services

Anthony Whyte arwhyte at umich.edu
Thu Oct 21 16:27:30 PDT 2010


I should note that I misread your email slightly -- the jars I belive you are referring to are: archive-api and sections-integrationsupport

edu-services-1.0.6 base pom:

<dependency>
<groupId>org.sakaiproject.common</groupId>
<artifactId>archive-api</artifactId>
<version>[1.0.0,1.1.0)</version>
</dependency>

Binaries exist here: (1.0.4, 1.1.0-a01, 1.1.0-a02)

http://source.sakaiproject.org/maven2/org/sakaiproject/common/archive-api

<dependency>
<groupId>org.sakaiproject.edu-services.sections</groupId>
<artifactId>sections-integrationsupport</artifactId>
<version>[1.0.0,1.1.0)</version>
</dependency>

Binaries exist here (1.0.6, 1.1.0-a01, 1.1.0-a02)

http://source.sakaiproject.org/maven2/org/sakaiproject/edu-services/sections/sections-integrationsupport/

Anyways, the issue is not about missing jars, it's about a version range pulling in the wrong binaries for you.  

You'll start seeing fixes in the morning.

Anth



On Oct 21, 2010, at 7:08 PM, Anthony Whyte wrote:

> edu-services-1.1.0-a02 was generated on 19 October 2010 for sakai-2.8.0-a02; you can find it along with 1.1.0-a01 (generated 22 Sept 2010) and earlier binaries here:
> 
> http://source.sakaiproject.org/maven2/org/sakaiproject/edu-services/
> 
> What you've been experiencing of late is Maven opting for the new jars (1.1.0-a01 then as of Tuesday evening, 1.1.0-a02) as you deduced earlier  In either case, whether or not you can retrieve these binaries, whether or not they are in your local repo or elsewhere--you don't want them.  You need edu-services-1.0.6.
> 
> As I noted in my earlier email, I am going to remove the version range from edu-services-1.0.x and generate a new release (1.0.7).  I will then do the same for the rest of the 2.7-related indies.  I'll update 2.7.x so that it deploys the new binaries, sans version ranges.   
> 
> Once I am done, this leakage of 2.8-related artifacts into 2.7 builds will cease.
> 
> Anth
> 
> 
> 
> 
> 
> 
> 
> 
> On Oct 21, 2010, at 6:45 PM, Jim Eng wrote:
> 
>> I may be saying it wrong, but edu-services' base pom declares that it needs version [1.0.0-1.1.0) of a couple jars.  For some reason for the past couple weeks, maven has decided that the version it needs based on that declaration was 1.1.0-a02. I'm guessing that maven was finding that jar in my local repo and then it looked in remote repositories to see if there was a newer version.  Because edu-services also contained a reference to a bogus repo (apache-repo), that took a lot of time.  Once I cleaned out my local repo, for some reason, maven still decides it needs version 1.1.0-a02 of that jar, but now it is no longer in my local repo and it's not in any remote repo, so the build fails.  
>> 
>> Maybe I am doing something wrong that is aggravating this situation, but if the pom said it wanted version 1.0.6 of that jar (which *IS* in the remote repos *AND* in my local repo) I would not be having this problem.  To me that is a bug in the pre-built edu-services jars. 
>> 
>> Jim 
>> 
>> 
>> On Oct 21, 2010, at 6:25 PM, Anthony Whyte wrote:
>> 
>>> We don't delete stable binaries from our Sakai Mavn2 repo so the scenario described in the sentence below insofar as it pertains to Sakai artifacts ("1.1.0-a02 . . . is no longer in  . . . any remote repo") should rank pretty low when one is seeking to account for a build failure.
>>> 
>>>> If maven decides it needs version 1.1.0-a02 of a particular jar and it is no longer in the local repo or any remote repo, and it can't be built locally, that causes the build to fail.  
>>> 
>>> 
>>> Recall, however that we generate no binaries for "monolithic" Sakai (e.g., non-indies) during the alpha, beta, rc phases prior to a release.  If for some reason you decide to declare a dependency on assignments-api-2.8-SNAPSHOT, you better have the jar in your local .m2 repo because you'll never retrieve it remotely (until such a time as we choose to repackage assignments).
>>> 
>>> ~Anth
>>> 
>>> 
>>> 
>>> 
>>> On Oct 21, 2010, at 5:50 PM, Jim Eng wrote:
>>> 
>>>> Actually, this does not cause as much of a problem (at least at build time) if you have old 2.8 artifacts in your repo.  It's a problem when you don't have them because some of them are no longer available from remote repos.  If maven decides it needs version 1.1.0-a02 of a particular jar and it is no longer in the local repo or any remote repo, and it can't be built locally, that causes the build to fail.  And short of checking out source for edu-services, fixing the errors in the pom files, and building it locally, there is no way to get gradebook2 to build with 2.7.  
>>>> 
>>>> This is not just a problem for gradebook2.  Any other project that depends on sections (and probably other edu-services jars) will have similar problems until this is fixed.
>>>> 
>>>> Jim
>>>> 
>>>> 
>>>> On Oct 21, 2010, at 4:51 PM, Steve Swinsburg wrote:
>>>> 
>>>>> When building 2.7, you need to blow away that portion of your local Maven repo so that it doesn't have the newer 2.8 artifacts in there. 
>>>>> 
>>>>> But I agree that a specific version should be used so as to eliminate this issue.
>>>>> 
>>>>> cheers,
>>>>> Steve
>>>>> 
>>>>> 
>>>>> 
>>>>> On 22/10/2010, at 7:21 AM, Jim Eng wrote:
>>>>> 
>>>>>> We need to eliminate the apache-repo references in all pom.xml files, but that is really just an annoyance that mostly slows down the build process for developers.
>>>>>> 
>>>>>> On the other hand, the use of ranges for versions in poms for "released" versions of a project should be considered a blocker.  In this case, it looks like the correct version would have been "${project.version}" rather than "[1.0.0-1.1.0)".  
>>>>>> 
>>>>>> What is needed to get this fixed?  Does it require building edu-services 1.0.7 and replacing all references to edu-services 1.0.6 with edu-services 1.0.7?  
>>>>>> 
>>>>>> Jim 
>>>>>> 
>>>>>> 
>>>>>> On Oct 21, 2010, at 3:23 PM, Jim Eng wrote:
>>>>>> 
>>>>>>> Thanks, Chris. It looks like you are correct.  The last element in the dependencyManagement section of this pom.xml uses a range:
>>>>>>> 
>>>>>>> https://source.sakaiproject.org/svn//edu-services/tags/edu-services-1.0.6/pom.xml
>>>>>>> 
>>>>>>> The gradebook2 build process depends on the jar, which is downloaded rather than built locally.  That pom.xml file also includes a repository element for apache-repo with a bogus URL.  I don't think we'll be able to build gradebook2 locally until that 1.0.6 jar is rebuilt without that range of versions and without the apache-repo element.
>>>>>>> 
>>>>>>> Jim
>>>>>>> 
>>>>>>> 
>>>>>>> On Oct 21, 2010, at 3:02 PM, Maurer, Christopher Wayne wrote:
>>>>>>> 
>>>>>>>> Jim,
>>>>>>>> I think this is the same sort of issue that we just ran into at IU.  There are version ranges specified in the poms and apparently maven isn't dealing with them properly.  What we were seeing was a dependency that had a range like this:
>>>>>>>> <version>[2.7.0,2.8.0)</version>
>>>>>>>> 
>>>>>>>> …was pulling in the 2.8.0-alpha02 artifacts.
>>>>>>>> This caught us a bit off guard!  So, I expect that's the same thing you're seeing.  It's pulling in those alpha artifacts related to the 2.8 release instead of the highest 2.7 artifact.
>>>>>>>> 
>>>>>>>> Chris
>>>>>>>> 
>>>>>>>> 
>>>>>>>> From: Jim Eng <jimeng at umich.edu>
>>>>>>>> Date: Thu, 21 Oct 2010 14:46:24 -0400
>>>>>>>> To: Jim Eng <jimeng at umich.edu>
>>>>>>>> Cc: <gradebook2-dev at collab.sakaiproject.org>, David Pang <dxp at umich.edu>, Sakai-Dev Developers <sakai-dev at collab.sakaiproject.org>
>>>>>>>> Subject: Re: [Building Sakai] Problem with pom.xml at root of edu-services
>>>>>>>> 
>>>>>>>> master/pom.xml defines this property:
>>>>>>>> 
>>>>>>>> <sakai.edu-services.version>1.0.6</sakai.edu-services.version>
>>>>>>>> 
>>>>>>>> I am not seeing any hardcoded versions in master, core-deploy, sections or gradebook2.  
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On Oct 21, 2010, at 2:39 PM, Jim Eng wrote:
>>>>>>>> 
>>>>>>>>> Turns out there's another problem. Sakai 2.7.1 and 2.7.x seem to have a mix of versions for edu-services.  After cleaning out everything from ~/.m2/repository/org/sakaiproject and starting to build full sakai version 2.7.1, I find that sections-integrationsupport-1.0.6.jar has been put into my m2 repo.  But when gradebook2 tries to find the sections-api jar, it ends up using ${sakai.edu-services.version} when looking for that jar, and ${sakai.edu-services.version} seems to have a value of 1.1.0-a02 instead of 1.0.6.  
>>>>>>>>> 
>>>>>>>>> I have been trying to unwind this to see why core-deply gets the 1.0.6 versions of various edu-services jars, but then the sections project seems to want the 1.1.0-a02 versions.   
>>>>>>>>> 
>>>>>>>>> Jim
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Oct 20, 2010, at 2:08 PM, Anthony Whyte wrote:
>>>>>>>>> 
>>>>>>>>>> I'll handle this.
>>>>>>>>>> 
>>>>>>>>>> Anth
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> On Oct 20, 2010, at 1:32 PM, Matthew Jones wrote:
>>>>>>>>>> 
>>>>>>>>>>> Looks like Anthony removed this from master in November 2009? Searching email it's given people a lot of problems in various messages.
>>>>>>>>>>> 
>>>>>>>>>>> http://collab.sakaiproject.org/pipermail/sakai-dev/2010-January/005521.html
>>>>>>>>>>> 
>>>>>>>>>>> On Wed, Oct 20, 2010 at 1:29 PM, Jim Eng <jimeng at umich.edu> wrote:
>>>>>>>>>>>> What I meant was:  Could someone remove or update **the apache-repo repository element in** the edu-services pom.xml file?
>>>>>>>>>>>> 
>>>>>>>>>>>> :-)
>>>>>>>>>>>> 
>>>>>>>>>>>> On Oct 20, 2010, at 1:26 PM, Jim Eng wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>> > The "repositories" tag in the root pom.xml file for edu-services includes the following repository element:
>>>>>>>>>>>> >
>>>>>>>>>>>> >        <repository>
>>>>>>>>>>>> >            <id>apache-repo</id>
>>>>>>>>>>>> >            <name>apache-repo</name>
>>>>>>>>>>>> >            <layout>default</layout>
>>>>>>>>>>>> >            <url>http://myfaces.zones.apache.org/dist/maven-repository</url>
>>>>>>>>>>>> >            <releases>
>>>>>>>>>>>> >                <enabled>true</enabled>
>>>>>>>>>>>> >            </releases>
>>>>>>>>>>>> >            <snapshots>
>>>>>>>>>>>> >                <enabled>false</enabled>
>>>>>>>>>>>> >            </snapshots>
>>>>>>>>>>>> >        </repository>
>>>>>>>>>>>> >
>>>>>>>>>>>> > This seems to be an invalid URL, and it causes problems when doing a full build of sakai with gradebook2.  The build hangs at this point for several minutes before timing out:
>>>>>>>>>>>> >
>>>>>>>>>>>> > [INFO] artifact org.sakaiproject.edu-services.sections:sections-integrationsupport: checking for updates from apache-repo
>>>>>>>>>>>> >
>>>>>>>>>>>> > After that long delay, the following messages are displayed:
>>>>>>>>>>>> >
>>>>>>>>>>>> > [WARNING] repository metadata for: 'artifact org.sakaiproject.edu-services.sections:sections-integrationsupport' could not be retrieved from repository: apache-repo due to an error: Operation timed out
>>>>>>>>>>>> > [INFO] Repository 'apache-repo' will be blacklisted
>>>>>>>>>>>> >
>>>>>>>>>>>> > A similar repository element has been commented out in the master/pom.xml file.  Could someone remove or update the edu-services pom.xml file?
>>>>>>>>>>>> >
>>>>>>>>>>>> > Thanks.
>>>>>>>>>>>> >
>>>>>>>>>>>> > Jim
>>>>>>>>>>>> > _______________________________________________
>>>>>>>>>>>> > sakai-dev mailing list
>>>>>>>>>>>> > sakai-dev at collab.sakaiproject.org
>>>>>>>>>>>> > http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>>>>>>>>>> >
>>>>>>>>>>>> > TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>>>>>>>>>>> >
>>>>>>>>>>>> >
>>>>>>>>>>>> 
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> sakai-dev mailing list
>>>>>>>>>>>> sakai-dev at collab.sakaiproject.org
>>>>>>>>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>>>>>>>>>> 
>>>>>>>>>>>> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>>>>>>>>>> 
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> sakai-dev mailing list
>>>>>>>>>>> sakai-dev at collab.sakaiproject.org
>>>>>>>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>>>>>>>>> 
>>>>>>>>>>> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> _______________________________________________
>>>>>>>>> sakai-dev mailing list
>>>>>>>>> sakai-dev at collab.sakaiproject.org
>>>>>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>>>>>>> 
>>>>>>>>> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>>>>>>> 
>>>>>>>> _______________________________________________ sakai-dev mailing list sakai-dev at collab.sakaiproject.org http://collab.sakaiproject.org/mailman/listinfo/sakai-dev TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> sakai-dev mailing list
>>>>>>> sakai-dev at collab.sakaiproject.org
>>>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>>>>> 
>>>>>>> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>>>>> 
>>>>>> _______________________________________________
>>>>>> sakai-dev mailing list
>>>>>> sakai-dev at collab.sakaiproject.org
>>>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>>>> 
>>>>>> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>>>> 
>>>> 
>>>> _______________________________________________
>>>> sakai-dev mailing list
>>>> sakai-dev at collab.sakaiproject.org
>>>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>>>> 
>>>> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>>> 
>> 
> 
> _______________________________________________
> sakai-dev mailing list
> sakai-dev at collab.sakaiproject.org
> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
> 
> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20101021/c312e7f7/attachment.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3829 bytes
Desc: not available
Url : http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20101021/c312e7f7/attachment.bin 


More information about the sakai-dev mailing list