From Fedora Project Wiki
No edit summary
mNo edit summary
Line 73: Line 73:
|-
|-
|Django
|Django
|{{result|fail|Nobody}}
|-
|-
|django-addons
|django-addons

Revision as of 09:51, 2 March 2012

Renaming Django packages - How to

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

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

This is the list of all django packages that we are targeting. Please write your name to the Responsible column for the packages that you will take care of, so that we can track what packages are not taken care of at all. When the review process is being done/done and the package is in buildroot, add a proper result mark:

{{result|fail|Nobody}}
{{result|inprogress|Yourname}}
{{result|pass|Yourname}}
Package name Status
Django
Fail fail Nobody
django-addons
django-ajax-selects
django-annoying
django-authenticator
django-authopenid
django-authority
django-avatar
django-celery
django-contact-form
django-countries
django-dpaste
django-evolution
django-extra-form-fields
django-filter
django-flash
django-followit
django-keyedcache
django-kombu
django-lint
django-mako
django-mptt
django-notification
django-pagination
django-picklefield
django-piston
django-profile
django-profiles
django-pylibmc
django-recaptcha
django-recaptcha-works
django-registration
django-reversion
django-robots
django-sct
django-simple-captcha
django-sorting
Django-south
django-staticfiles
django-tables
django-tagging
django-tastypie
django-threadedcomments
django-threaded-multihost
django-tinymce
django-tracking
django-typepad

Fix provides to "django-foo" in these:

Package name Status
python-django-debug-toolbar
python-django-horizon
python-django-nose