From Fedora Project Wiki

Revision as of 14:05, 10 May 2010 by Sochotni (talk | contribs) (Added how-to for jakarta rename)

Jakarta-commons rename to apache-commons

This page hosts information about the next rename of jakarta-commons packages[1] to apache-commons[2]. This change should happend in rawhide for Fedora 14.

How

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)
  • if you made significant changes to spec file strip JPP license from beginning of the spec file
  • add Provides/Obsoletes for package
    • you might need to add new Epoch so that package can replace jakarta-commons version with same version
  • 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
  • make sure you are creating all needed symlinks in _javadocdir/javadir
  • standard packaging guidelines apply of course


Progress

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 TODO
commons-el fnasser None TODO
commons-codec mbooth None TODO
commons-launcher mbooth None TODO
commons-pool mbooth None TODO
commons-logging sochotni None DONE
commons-discovery sochotni logging ON REVIEW
commons-daemon sochotni None TODO
commons-io sochotni None TODO
commons-fileupload sochotni io TODO
commons-lang sochotni None ON REVIEW
commons-net sochotni None TODO
commons-beanutils fnasser collections, logging TODO
commons-cli jmrodri lang, logging TODO
commons-httpclient sochotni codec, logging TODO
commons-jxpath fnasser beanutils, collections, logging TODO
commons-dbcp mbooth collections, pool TODO
commons-digester mbooth beanutils, logging TODO
commons-modeler mbooth beanutils, collections, digester, logging TODO
commons-validator mbooth beanutils, collections, digester, logging TODO
commons-configuration fnasser beanutils, codec, collections, dbcp, digester, jxpath, lang, logging, pool TODO