From Fedora Project Wiki

Revision as of 06:49, 21 May 2010 by Huwang (talk | contribs) (Dependency Info)

Maven Update

This page hosts information about the next major Maven update (Maven 2.2.1) in Fedora. If you wish to help out with it, please feel free to contact Deepak or Alexander for pointers.

Maven 2.2.1

The spec file for 2.2.1 will be written from scratch, as the current 2.0.x spec file has gotten convoluted over time, and is no longer maintainable. Another major change for the maven 2.2.1 set will be that plugins will not longer come from the maven2 srpm. Instead, each plugin will have its own rpm.

NOTE: To avoid breaking rawhide, we have a specified target for this task, the build instruction is "make build TARGET=dist-f14-maven221", and scratch build instruction is "koji build --scratch dist-f14-maven221 <src.rpm>".

NOTE: Non core plugins (i.e. not needed to build maven itself) are not listed here but on a different page. See their page here.

Progress

Because maven updates (especially this one) are such a major undertaking, issues need to be tackled in stages. The current plan is as follows:

Item Owner Status
Build bootstrap rpm with a single version (wherever possible) of each dependency Deepak Bhole Done
      Write script that can run through ~/.m2/ to gather the latest version, and link the rest to simulate a repo Deepak Bhole Done
      Write skeleton spec file that uses the above simulated repo to build maven (only %prep and %build) Deepak Bhole Done
      Prepare preliminary list of packages needed, what is in rawhide, and what subsequent steps are needed Deepak Bhole Done
Update patches for depmap/jpp repo support Deepak Bhole Done
      Port existing patches Deepak Bhole Done
      Update patchset for 2.2.1 Deepak Bhole Done
Update rpm spec file to make bootstrap version installable and usable for builds Deepak Bhole Done
Post usable bootstrap rpm publicly Deepak Bhole Done [1]
From the simulated repo, remove jars for which packages exist in rawhide (at >= required version), and try to build with those packages installed Deepak Bhole ON HOLD
Finalize list of work that needs to be done in terms of package updates and new packages Deepak Bhole TODO
Build bootstrap version in rawhide Deepak Bhole TODO
      Update spec file so that bootstrap version installs and uses a prebuilt set of jars Deepak Bhole TODO
      Build the bootstrap maven in rawhide tag in koji, (in separate tag if needed) Deepak Bhole TODO
Create/Build all the dependencies (updates and new packages) Distributed TODO
Finally, build maven in non-bootstrap mode Deepak Bhole TODO

Dependency Info

Preliminary build has yielded some data about updates/new packages. This list should not be considered 100% accurate yet as some items that are being considered "OK" due to higher version, might cause errors. And vice-versa, items with lower versions may work perfectly fine.

A more accurate set will be acquired when step 7 (build with whatever is in Fedora already) is complete.

Jars pulled Package Required Version Version in Rawhide Status (For now)

asm:asm:3.1
asm:asm-commons:3.1
asm:asm-tree:3.1
asm:asm-util:3.1

objectweb-asm 3.1 3.1 OK
backport-util-concurrent:backport-util-concurrent:3.1 backport-util-concurrent 3.1 3.1 OK
bsh:bsh:1.3.0 bsh 1.3.0 1.3.0 OK
classworlds:classworlds:1.1 classworlds 1.1 1.1 OK
com:jcraft:jsch:0.1.38 jsch 0.1.38 0.1.41 OK
commons-cli:commons-cli:1.2 jakarta-commons-cli 1.2 1.1 OK
commons-codec:commons-codec:1.2 jakarta-commons-codec 1.2 1.4 OK
commons-collections:commons-collections:3.2 jakarta-commons-collections 3.2 3.2.1 OK
commons-httpclient:commons-httpclient:3.1 jakarta-commons-httpclient 3.1 3.1 OK
commons-io:commons-io:1.4 jakarta-commons-io 1.4 1.4 OK
commons-lang:commons-lang:2.3 jakarta-commons-lang 2.3 2.3 OK
commons-logging:commons-logging:1.0.4 jakarta-commons-logging 1.0.4 1.0.4 OK
easymock:easymock:1.2_Java1.3 easymock 1.2 1.2 OK
edu/umd/cs/mtc:multithreadedtc-jdk14:1.01 multithreadedtc 1.01 None New package
jdom:jdom:1.0 jdom 1.0 1.0 OK
junit:junit:3.8.1 junit 3.8.1 3.8.2 OK

nekohtml:nekohtml:1.9.6.2
nekohtml:xercesMinimal:1.9.6.2

nekohtml 1.9.6.2 0.9.5 OK
net/sf/retrotranslator:retrotranslator-runtime:1.2.7 retrotranslator 1.2.7 None New package

org/apache:ant:ant:1.7.1
org/apache:ant:ant-launcher:1.7.1

ant 1.7.1 1.7.1 OK
org/apache:apache-jar-resource-bundle:1.4 apache-resource-bundles 1.4 1.4 OK

org/apache:jackrabbit:jackrabbit-jcr-commons:1.5.0
org/apache:jackrabbit:jackrabbit-webdav:1.5.0

jackrabbit 1.5.0 None New package (In-Progress:yyang)
    javax/jcr:jcr:1.0 jcr 1.0 None New package (In-Progress:yyang)
    org/apache/poi:poi:3.2-FINAL jakarta-poi 3.2 None New package (In-Progress:yyang)
org/apache/maven:apache-maven:2.2.1 maven2 2.2.1 2.0.8 Needs update

org/apache/maven/doxia:doxia-core:1.0
org/apache/maven/doxia:doxia-decoration-model:1.0
org/apache/maven/doxia:doxia-logging-api:1.1
org/apache/maven/doxia:doxia-module-apt:1.0
org/apache/maven/doxia:doxia-module-fml:1.0
org/apache/maven/doxia:doxia-module-xdoc:1.0
org/apache/maven/doxia:doxia-module-xhtml:1.0
org/apache/maven/doxia:doxia-sink-api:1.1
org/apache/maven/doxia:doxia-site-renderer:1.0

maven-doxia 1.1 1.1.2 OK

org/apache/maven:enforcer:enforcer-api:1.0-beta-1
org/apache/maven:enforcer:enforcer-rules:1.0-beta-1
org/apache/maven/plugins:maven-enforcer-plugin:1.0-beta-1

maven-enforcer 1.0-beta-1 1.0-beta-2 On review

org/mortbay:jetty:jetty:6.1.5
org/mortbay:jetty:jetty-util:6.1.5
org/mortbay:jetty:servlet-api-2.5:6.1.5

jetty 6.1.5 6.1.21 OK
org/apache/maven:maven-archiver:2.4 maven-archiver 2.4 2.4 OK

org/apache/maven:maven-artifact:2.2.1
org/apache/maven:maven-artifact-manager:2.2.1
org/apache/maven:maven-artifact-test:2.2.1
org/apache/maven:maven-compat:2.2.1
org/apache/maven:maven-core:2.2.1
org/apache/maven:maven-error-diagnostics:2.2.1
org/apache/maven:maven-model:2.2.1
org/apache/maven:maven-monitor:2.2.1
org/apache/maven:maven-plugin-api:2.2.1
org/apache/maven:maven-plugin-descriptor:2.2.1
org/apache/maven:maven-plugin-parameter-documenter:2.2.1
org/apache/maven:maven-plugin-registry:2.2.1
org/apache/maven:maven-profile:2.2.1
org/apache/maven:maven-project:2.2.1
org/apache/maven:maven-repository-metadata:2.2.1
org/apache/maven:maven-script-ant:2.2.1
org/apache/maven:maven-script-beanshell:2.2.1
org/apache/maven:maven-settings:2.2.1
org/apache/maven:maven-toolchain:2.2.1

maven2 2.2.1 2.0.8 Needs update
org/apache/maven/plugins:maven-assembly-plugin:2.2-beta-4 maven-assembly-plugin 2.2-beta-4 None On Review
org/apache/maven/plugins:maven-clean-plugin:2.1.1 maven-clean-plugin 2.1.1 2.4.1 OK
org/apache/maven/plugins:maven-compiler-plugin:2.0.2 maven-compiler-plugin 2.0.2 2.0.2 OK
org/apache/maven/plugins:maven-install-plugin:2.1 maven-install-plugin 2.1 None OK
org/apache/maven/plugins:maven-jar-plugin:2.1 maven-jar-plugin 2.1 2.3 OK
org/apache/maven/plugins:maven-pmd-plugin:2.4 maven-pmd-plugin 2.4 2.5 OK
org/apache/maven/plugins:maven-remote-resources-plugin:1.0-beta-2 maven-remote-resources-plugin 1.0-beta-2 None New package(In-Progress:huwang )
org/apache/maven/plugins:maven-release-plugin:2.0 maven-release 2.0 None On Review
org/apache/maven/plugins:maven-resources-plugin:2.2 maven-resources-plugin 2.2 None OK
org/apache/maven/plugins:maven-shade-plugin:1.2 maven-shade-plugin 1.2 1.2.2 OK
org/apache/maven/plugins:maven-site-plugin:2.1 maven-site-plugin 2.1 2.1 OK
org/apache/maven/plugins:maven-surefire-plugin:2.3 maven-surefire-plugin 2.3 2.3 OK
org/apache/maven:reporting:maven-reporting-api:2.2.1 maven2 2.2.1 2.0.8 Needs update

org/apache/maven/scm:maven-scm-api:1.0-beta-3
org/apache/maven/scm:maven-scm-manager-plexus:1.0-beta-3
org/apache/maven/scm:maven-scm-provider-clearcase:1.0-beta-3
org/apache/maven/scm:maven-scm-provider-cvs-commons:1.0-beta-3
org/apache/maven/scm:maven-scm-provider-cvsexe:1.0-beta-3
org/apache/maven/scm:maven-scm-provider-perforce:1.0-beta-3
org/apache/maven/scm:maven-scm-provider-starteam:1.0-beta-3
org/apache/maven/scm:maven-scm-provider-svn-commons:1.0-beta-3
org/apache/maven/scm:maven-scm-provider-svnexe:1.0-beta-3

maven-scm 1.0-beta-3 1.2 OK

org/apache/maven/shared:file-management:1.1
org/apache/maven/shared:maven-common-artifact-filters:1.1
org/apache/maven/shared:maven-dependency-tree:1.1
org/apache/maven/shared:maven-downloader:1.1
org/apache/maven/shared:maven-repository-builder:1.0-alpha-2
org/apache/maven/shared:maven-shared-io:1.1

maven-shared 8 14 Needs update(In-Progress:yyang)

org/apache/maven:surefire:surefire-api:2.3
org/apache/maven:surefire:surefire-booter:2.3

maven-surefire 2.3 2.3 OK

org/apache/maven:surefire:surefire-junit:2.3

maven-surefire-provider-junit 2.3 2.3 OK

org/apache/maven:wagon:wagon-file:1.0-beta-6
org/apache/maven:wagon:wagon-http:1.0-beta-6
org/apache/maven:wagon:wagon-http-lightweight:1.0-beta-6
org/apache/maven:wagon:wagon-http-shared:1.0-beta-6
org/apache/maven:wagon:wagon-provider-api:1.0-beta-6
org/apache/maven:wagon:wagon-ssh:1.0-beta-6
org/apache/maven:wagon:wagon-ssh-common:1.0-beta-6
org/apache/maven:wagon:wagon-ssh-external:1.0-beta-6
org/apache/maven:wagon:wagon-webdav-jackrabbit:1.0-beta-6

maven-wagon 1.0-beta-6 1.0-beta-2 OK
org/beanshell:bsh:2.0b4 bsh2 2.0b4 None New package

org/codehaus/modello:modello-core:1.0.1
org/codehaus/modello:modello-maven-plugin:1.0.1
org/codehaus/modello:modello-plugin-converters:1.0.1
org/codehaus/modello:modello-plugin-dom4j:1.0.1
org/codehaus/modello:modello-plugin-java:1.0.1
org/codehaus/modello:modello-plugin-jdom:1.0.1
org/codehaus/modello:modello-plugin-stax:1.0.1
org/codehaus/modello:modello-plugin-xdoc:1.0.1
org/codehaus/modello:modello-plugin-xml:1.0.1
org/codehaus/modello:modello-plugin-xpp3:1.0.1
org/codehaus/modello:modello-plugin-xsd:1.0.1

modello 1.0.1 1.0-alpha-15 Needs update(In-Progress:yyang)
org/codehaus/mojo:buildnumber-maven-plugin:1.0-beta-4 buildnumber-maven-plugin 1.0-beta-4 None New package (In-Progress:weli)
org/codehaus/plexus:plexus-active-collections:1.0-beta-2 plexus-active-collections 1.0-beta-2 None On Review
org/codehaus/plexus:plexus-ant-factory:1.0-alpha-2.1 plexus-ant-factory 1.0-alpha-2.1 1.0-alpha-2.1 OK
org/codehaus/plexus:plexus-archiver:1.0-alpha-12 plexus-archiver 1.0-alpha-12 1.0-alpha-12 OK
org/codehaus/plexus:plexus-bsh-factory:1.0-alpha-7 plexus-bsh-factory 1.0-alpha-7 1.0-alpha-7 OK
org/codehaus/plexus:plexus-classworlds:1.2-alpha-9 plexus-classworlds 1.2-alpha-9 1.2-alpha-9 OK

org/codehaus/plexus:plexus-compiler-api:1.5.3
org/codehaus/plexus:plexus-compiler-javac:1.5.3
org/codehaus/plexus:plexus-compiler-manager:1.5.3

plexus-compiler 1.5.3 1.5.2 OK
org/codehaus/plexus:plexus-component-api:1.0-alpha-15 plexus-components 1.0-alpha-15 None OK
org/codehaus/plexus:plexus-container-default:1.0-alpha-30 plexus-containers-container-default 1.0-alpha-30 1.0-alpha-34 OK
org/codehaus/plexus:plexus-container-default:1.0-alpha-9-stable-1 plexus-container-default 1.0-alpha-9-stable-1 1.0-alpha-8 OK
org/codehaus/plexus:plexus-i18n:1.0-beta-7 plexus-i18n 1.0-beta-7 1,0-beta-10 OK
org/codehaus/plexus:plexus-interactivity-api:1.0-alpha-6 plexus-interactivity 1.0-alpha-6 1.0-alpha-5 OK
org/codehaus/plexus:plexus-interpolation:1.11 plexus-interpolation 1.11 1.13 OK
org/codehaus/plexus:plexus-io:1.0-alpha-4 plexus-io 1.0-alpha-4 1.0-alpha-5 OK
org/codehaus/plexus:plexus-resources:1.0-alpha-4 plexus-resources 1.0-alpha-4 1.0-alpha-4 OK
org/codehaus/plexus:plexus-utils:1.5.12 plexus-utils 1.5.12 2.0.5 OK
org/codehaus/plexus:plexus-velocity:1.1.7 plexus-velocity 1.1.7 1.1.7 OK
org/sonatype/plexus:plexus-build-api:0.0.6 plexus-build-api 0.0.6 0.0.6 OK
org/sonatype/plexus:plexus-cipher:1.5 plexus-cipher 1.5 None On Review
org/sonatype/plexus:plexus-sec-dispatcher:1.3 plexus-sec-dispatcher 1.3 None New package (In-Progress:huwang)
org/sonatype/forge:forge-parent:5 forge-parent 5 None OK
org/sonatype/spice:spice-parent:15 spice-parent 15 None OK
oro:oro:2.0.8 jakarta-oro 2.0.8 2.0.8 OK
regexp:regexp:1.3 regexp 1.3 1.5 OK

org/slf4j:jcl-over-slf4j:1.5.6
org/slf4j:slf4j-api:1.5.6
org/slf4j:slf4j-jdk14:1.5.6
org/slf4j:slf4j-nop:1.5.3

slf4j 1.5.6 1.5.6 OK

org/apache/velocity:velocity:1.5
velocity:velocity:1.5
velocity:velocity-dep:1.5

velocity 1.5 1.5 OK