From Fedora Project Wiki

Line 67: Line 67:
| commons-cli || jmrodri || lang, logging || '''<span style="color:red">TODO</span> '''
| commons-cli || jmrodri || lang, logging || '''<span style="color:red">TODO</span> '''
| commons-jxpath || fnasser || beanutils, collections, logging || '''<span style="color:red">TODO</span> '''
| commons-jxpath || sochotni || beanutils, collections, logging || '''<span style="color:red">TODO</span> '''
| commons-dbcp || [[User:mbooth|mbooth]] || collections, pool || '''<span style="color:red">TODO</span> '''
| commons-dbcp || [[User:mbooth|mbooth]] || collections, pool || '''<span style="color:red">TODO</span> '''

Revision as of 11:23, 24 May 2010

Jakarta-commons rename to apache-commons

This page hosts information about the next rename of jakarta-commons packages[1] to apache-commons[2].

This is important


This part should give you information how to rename and rebase your jakarta package to create a new apache one.

  • check if new upstream version exists, if so...use it
  • rename spec file (pretty obvious eh?)
  • add BuildArch: noarch
  • replace %define with %global (this policy is newer then jakarta spec files) and define substitute names. For example
    • %global base_name logging
    • %global short_name commons-%{base_name}
  • make sure Source0 URL, project URL etc all use macros for name/version of the package
  • strip changelog (and create your own stating that this is rename of jakarta- package)
  • add Provides/Obsoletes for package (! also for javadoc sub-packages)
    • you might need to add new Epoch so that package can replace jakarta-commons version with same version
    • for javadoc sub-packages it is enough to obsolete
  • be sure to add java-devel to BR/R, otherwise things can fail because normally gcj devel version is pulled in
  • build package with maven if there is usable pom.xml file
    • you will need additional R/BR in specfile.
    • in special cases depmap might need to be created (see apache-commons-logging for example)
    • in some cases tests can fail due to various reason. Until maven is updated this can be worked around by adding -Dmaven.test.skip=true to mvn-jpp
    • if the pom file depends on maven-release-plugin you will have to patch it out of pom. This is provided by maven2 package for now (review bug open for separate plugin as of now)
    • call %add_to_maven_depmap GROUP_ID ARTIFACT_ID %{version} JPP %{name}
      • GROUP_ID/ARTIFACT_ID are in maven repositories. You should leave also older calls to add_maven_depmap if it uses wrong GROUP_ID/ARTIFACT_ID to ensure backward compatibility
      • if original jakarta-commons package didn't provide pom file, make sure that entry for this package is removed from maven2-common-poms and include backward compatible add_to_maven_depmap
  • make sure you are creating all needed symlinks in _javadocdir/javadir
  • standard packaging guidelines apply of course


Following table lists packages in jakarta-commons, their cross-dependencies and owners responsible for them. Packages with no dependencies can be renamed immediately. Others should wait for their dependencies to rename first.

Package Owner Dependencies Status
commons-collections devrim None TODO
commons-compress Red None DONE
commons-el sochotni None TODO
commons-codec mbooth None DONE
commons-launcher mbooth None ON REVIEW
commons-pool mbooth None TODO
commons-logging sochotni None DONE
commons-discovery sochotni logging DONE
commons-daemon sochotni None ON REVIEW
commons-io sochotni None DONE
commons-fileupload sochotni io DONE
commons-lang sochotni None DONE
commons-net sochotni None DONE
commons-beanutils sochotni collections, logging CVS WAITING
commons-cli jmrodri lang, logging TODO
commons-jxpath sochotni beanutils, collections, logging TODO
commons-dbcp mbooth collections, pool TODO
commons-digester mbooth beanutils, logging ON REVIEW
commons-modeler mbooth beanutils, collections, digester, logging TODO
commons-validator mbooth beanutils, collections, digester, logging TODO
commons-configuration sochotni beanutils, codec, collections, dbcp, digester, jxpath, lang, logging, pool TODO

  • jakarta-commons-httpclient - It is not part of apache commons but a top-level project. As a result we will leave jakarta-commons-httpclient package for now and package the new one allowing the 2 to coexist.