From Fedora Project Wiki

Renaming Django packages

This page summarizes the progress of transition from Django* and django* to python-django* packages, as submitted in fpc ticket [1].

Stop (medium size).png
This is a caution
This is not a final revision and things may change after discussion of python-devel, so please don't do anything yet :)

Instructions

  • All packages must be re-reviewed (in the review process, state that it is a re-review of existing package): Package_Renaming_Process#Re-review_required.
  • Target is Fedora 18 (TODO: discuss on python-devel)
  • Be careful of proper Provides/Obsoletes: Packaging:Guidelines#Renaming.2FReplacing_Existing_Packages.
  • Add the Provides: django* even if the package was originally named Django*. This will allow the users to install packages by simply typing "yum install django" or "yum install django-foo" with the lowercase "d". This Provide should stay forever, because we want the users to be able to do this.

Examples

Some examples how to do it.

Django-foo

A package with name starting in uppercase.

Original package:

Name: Django-foo
Version: 1.2.3
Release: 3

New package:

Name: python-django-foo
Version: 1.2.3
Release: 1
# These are added because of the renaming mechanism
Provides: Django-foo = %{version}-%{release} # Provide with macros.
Obsoletes: Django-foo < 1.2.3-4 # Obsolete anything that is lower than the _bumped release_ of the renamed package. Obsolete with hardcoded values of renamed package.
# Add this for good usability, as mentioned above.
Provides: django-foo = %{version}-%{release}

django-bar

A package with name starting in lowercase.

Original package:

Name: django-bar
Version: 1.2.3
Release: 3

New package:

Name: python-django-bar
Version: 1.2.3
Release: 1
# This is added because of the renaming mechanism
Provides: django-bar = %{version}-%{release} # Provide with macros.
# This is added because of the renaming mechanism, but also for good usability, so it should stay forever in this package.
Obsoletes: django-bar < 1.2.3-4 # Obsolete anything that is lower than the _bumped release_ of the renamed package. Obsolete with hardcoded values of renamed package.

List of Packages