tag 373265 + pending patch
tag 366759 + pending patch
thanks
Hi,
Attached is the diff for my cheetah 1.0-1.1 NMU. As the changes are quite
intrusive I've uploaded it to DELAYED/2-days which means that the NMU will
automatically happen in 2 days unless you either upload a fixed version
yourself before or you remove the files from the delayed queue.
I believe the changes are ok, however. We have tested the resulting
package with care.
Thanks to Arnaud Fontaine for doing the bulk of the work.
Cheers,
--
Raphaël Hertzog
Premier livre français sur Debian GNU/Linux :
http://www.ouaza.com/livre/admin-debian/
reverted:
--- cheetah-1.0/debian/cheetah-common.links
+++ cheetah-1.0.orig/debian/cheetah-common.links
@@ -1 +0,0 @@
-usr/share/man/man1/cheetah.1.gz usr/share/man/man1/cheetah-compile.1.gz
diff -u cheetah-1.0/debian/control cheetah-1.0/debian/control
--- cheetah-1.0/debian/control
+++ cheetah-1.0/debian/control
@@ -2,69 +2,16 @@
Section: text
Priority: optional
Maintainer: Chad Walstrom <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>= 4.1.38), cdbs (>= 0.4.26), python-dev,
python2.3-dev, python2.4-dev
-Standards-Version: 3.6.1.0
-
-Package: cheetah-common
-Architecture: all
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Description: text-based template engine and Python code generator
- Cheetah can be used as a standalone templating utility or referenced as a
- library from other Python applications. It has many potential uses, but web
- developers looking for a viable alternative to ASP, JSP, PHP and PSP are
- expected to be its principle user group.
- .
- This package contains the manpages for command-line scripts and the common
- package documentation. It does not contain the cheetah scripts or library
- itself; these are provided by the Python version-specific packages:
- python2.4-cheetah, python2.3-cheetah, or python2.2-cheetah.
+Build-Depends: debhelper (>= 5.0.37.2), cdbs (>= 0.4.43), python-all-dev (>=
2.3.5-7), python-support (>= 0.3.2), patchutils (>= 0.2.25), python-setuptools
(>= 0.6b3-1)
+Standards-Version: 3.7.2
Package: python-cheetah
-Architecture: all
-Depends: python2.3-cheetah (>= 1.0), ${misc:Depends}, ${shlibs:Depends}
-Description: text-based template engine and Python code generator
- Cheetah can be used as a standalone templating utility or referenced as a
- library from other Python applications. It has many potential uses, but web
- developers looking for a viable alternative to ASP, JSP, PHP and PSP are
- expected to be its principle user group.
- .
- This dummy package depends upon the Python version-specific binary package
- python2.3-cheetah.
-
-Package: python2.3-cheetah
-Architecture: any
-Depends: ${misc:Depends}, ${shlibs:Depends}, python2.3, cheetah-common (>=
1.0), cheetah-common (<< 2.0)
-Provides: cheetah
-Description: text-based template engine and Python code generator
- Cheetah can be used as a standalone templating utility or referenced as a
- library from other Python applications. It has many potential uses, but web
- developers looking for a viable alternative to ASP, JSP, PHP and PSP are
- expected to be its principle user group.
- .
- Features:
- * Generates HTML, SGML, XML, SQL, Postscript, form email, LaTeX, or any other
- text-based format.
- * Cleanly separates content, graphic design, and program code.
- * Blends the power and flexibility of Python with a simple template language
- that non-programmers can understand.
- * Gives template writers full access to any Python data structure, module,
- function, object, or method in their templates.
- * Makes code reuse easy by providing an object-orientated interface to
- templates that is accessible from Python code or other Cheetah templates.
- One template can subclass another and selectively reimplement sections of
- it.
- * Provides a simple, yet powerful, caching mechanism that can dramatically
- improve the performance of a dynamic website.
- * Compiles templates into optimized, yet readable, Python code.
- .
- Cheetah integrates tightly with Webware for Python
- (http://webware.sourceforge.net/): a Python application server and persistent
- servlet framework.
-
-Package: python2.4-cheetah
Architecture: any
-Depends: ${misc:Depends}, ${shlibs:Depends}, python2.4, cheetah-common (>=
1.0), cheetah-common (<< 2.0)
-Provides: cheetah
+Depends: ${python:Depends}, ${shlibs:Depends}
+Replaces: python2.3-cheetah (<< 1.0-1.1), python2.4-cheetah (<< 1.0-1.1),
cheetah-common (<< 1.0-1.1)
+Conflicts: python2.3-cheetah (<< 1.0-1.1), python2.4-cheetah (<< 1.0-1.1),
cheetah-common (<< 1.0-1.1)
+Provides: ${python:Provides}
+XB-Python-Version: ${python:Versions}
Description: text-based template engine and Python code generator
Cheetah can be used as a standalone templating utility or referenced as a
library from other Python applications. It has many potential uses, but web
diff -u cheetah-1.0/debian/rules cheetah-1.0/debian/rules
--- cheetah-1.0/debian/rules
+++ cheetah-1.0/debian/rules
@@ -7,72 +7,22 @@
+DEB_PYTHON_SYSTEM=pysupport
+
################################################################################
# CDBS File Inclusions and Variable Declarations
################################################################################
include /usr/share/cdbs/1/rules/debhelper.mk
-include /usr/share/cdbs/1/rules/simple-patchsys.mk
include /usr/share/cdbs/1/class/python-distutils.mk
+include /usr/share/cdbs/1/rules/simple-patchsys.mk
-################################################################################
-# Helper functions
-################################################################################
-# For each package, we need to move cheetah and cheetah-compile to
-# /usr/share/cheetah as version specific binaries. I couldn't rely on the
-# DEB_PYTHON_COMPILE_VER or cdbs_python_ver variables for some reason. Thus, I
-# used the pyver variable to
-
-# Helper make function to build pythonX.Y-cheetah maintainer scripts
-define build_maintscript
-sed -e 's,@pyver@,$(pyver),' -e 's,@alt_score@,$(alt_score),' < \
- debian/pythonX.Y-cheetah.postinst.in > \
- debian/python$(pyver)-cheetah.postinst
-sed -e 's,@pyver@,$(pyver),' < \
- debian/pythonX.Y-cheetah.prerm.in > \
- debian/python$(pyver)-cheetah.prerm
-sed -e 's,@pyver@,$(pyver),' < \
- debian/pythonX.Y-cheetah.links.in > \
- debian/python$(pyver)-cheetah.links
-endef
-
-# Helper make function to fix cheetah-pythonX.Y bin scripts
-define fix_scripts
-sed -e 's,#!/.*$$,#!/usr/bin/python$(pyver),' < \
- debian/python$(pyver)-cheetah/usr/bin/cheetah > \
- debian/python$(pyver)-cheetah/usr/bin/cheetah-python$(pyver)
-chmod 755 debian/python$(pyver)-cheetah/usr/bin/cheetah-python$(pyver)
-rm debian/python$(pyver)-cheetah/usr/bin/cheetah
-sed -e 's,#!/.*$$,#!/usr/bin/python$(pyver),' < \
- debian/python$(pyver)-cheetah/usr/bin/cheetah-compile > \
- debian/python$(pyver)-cheetah/usr/bin/cheetah-compile-python$(pyver)
-chmod 755 debian/python$(pyver)-cheetah/usr/bin/cheetah-compile-python$(pyver)
-rm debian/python$(pyver)-cheetah/usr/bin/cheetah-compile
-endef
-
-################################################################################
-# Rule Extensions
-################################################################################
-configure/python2.4-cheetah:: pyver=2.4
-configure/python2.4-cheetah:: alt_score=50
-configure/python2.4-cheetah::
- $(build_maintscript)
-
-configure/python2.3-cheetah:: pyver=2.3
-configure/python2.3-cheetah:: alt_score=90
-configure/python2.3-cheetah::
- $(build_maintscript)
-
-binary-install/python2.4-cheetah:: pyver=2.4
-binary-install/python2.4-cheetah:: alt_score=50
-binary-install/python2.4-cheetah::
- $(fix_scripts)
+# Install egg-info directories
+DEB_PYTHON_INSTALL_ARGS_ALL += --single-version-externally-managed
-binary-install/python2.3-cheetah:: pyver=2.3
-binary-install/python2.3-cheetah:: alt_score=90
-binary-install/python2.3-cheetah::
- $(fix_scripts)
+install/$(DEB_PYTHON_MODULE_PACKAGE)::
+ # Rename egg-info directory to share it between several python versions
+ set -e; \
+ for v in $(shell pyversions -rv); do \
+ mv
debian/python-cheetah/usr/lib/python$$v/site-packages/Cheetah-$(DEB_UPSTREAM_VERSION)-py$${v}.egg-info
\
+
debian/python-cheetah/usr/lib/python$$v/site-packages/Cheetah-$(DEB_UPSTREAM_VERSION).egg-info;
\
+ done
clean::
- -python2.4 ./setup.py clean -a
- -python2.3 ./setup.py clean -a
- -find . -name \*.pyc -exec rm \{\} \;
- -rm -f debian/python2.?-cheetah.postinst
- -rm -f debian/python2.?-cheetah.prerm
- -rm -f debian/python2.?-cheetah.links
+ -rm -rf Cheetah.egg-info
diff -u cheetah-1.0/debian/changelog cheetah-1.0/debian/changelog
--- cheetah-1.0/debian/changelog
+++ cheetah-1.0/debian/changelog
@@ -1,3 +1,38 @@
+cheetah (1.0-1.1) unstable; urgency=low
+
+ [ Arnaud Fontaine ]
+ * Non-maintainer upload.
+ * Update Standards-Version to 3.7.2. No changes needed.
+ * Remove cheetah-common package.
+ * Add egg support. Thanks to Piotr Ozarowski
+ <[EMAIL PROTECTED]>. Closes: #366759.
+ * Remove alternatives which are no more needed since pythonX.Y-cheetah
+ are folded into python-cheetah.
+ + Remove pythonX.Y-cheetah.postinst.in and pythonX.Y-cheetah.prerm.in
+ in debian/.
+ + Remove *.links files in favor of debian/links.
+ + Remove *.manpages files in favor of debian/manpages.
+ + Clean debian/rules.
+ * New Python policy changes. Closes: #373265.
+ + Update debian/cheetah.1 and debian/README.Debian:
+ + Add debian/pyversions and debian/pycompat.
+ + debian/compat:
+ - Update debhelper compatibility to 5.
+ + debian/rules:
+ - Add DEB_PYTHON_SYSTEM=pysupport.
+ + debian/control:
+ - Update Build-Depends.
+ - Add XB-Python-Version for binary package.
+ - Add Conflicts and Replaces fields against previous revisions.
+
+ [ Raphael Hertzog ]
+ * Sponsoring upload.
+ * Improvements in the rules file. Rename egg-info directory soon enough so
+ that dh_pysupport can decide to share it.
+ * Updated README.Debian.
+
+ -- Raphael Hertzog <[EMAIL PROTECTED]> Fri, 30 Jun 2006 19:11:25 +0200
+
cheetah (1.0-1) unstable; urgency=low
* New upstream version. Closes: #344977
reverted:
--- cheetah-1.0/debian/pythonX.Y-cheetah.prerm.in
+++ cheetah-1.0.orig/debian/pythonX.Y-cheetah.prerm.in
@@ -1,28 +0,0 @@
-#! /bin/sh
-# prerm script for python2.3-cheetah
-#
-# see: dh_installdeb(1)
-
-set -e
-
-case "$1" in
- remove|upgrade|deconfigure)
- update-alternatives --remove cheetah \
- /usr/bin/[EMAIL PROTECTED]@ || true
- ;;
- failed-upgrade)
- ;;
- *)
- echo "prerm called with unknown argument \`$1'" >&2
- exit 1
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
-
-
diff -u cheetah-1.0/debian/compat cheetah-1.0/debian/compat
--- cheetah-1.0/debian/compat
+++ cheetah-1.0/debian/compat
@@ -1 +1 @@
-4
+5
diff -u cheetah-1.0/debian/README.Debian cheetah-1.0/debian/README.Debian
--- cheetah-1.0/debian/README.Debian
+++ cheetah-1.0/debian/README.Debian
@@ -1,24 +1,12 @@
Cheetah on Debian
=================
-Cheetah is a developer-centric library, and as such, it is important to provide
-multiple Python version-specific packages. In most cases, Python is
-backwards-compatible for language syntax. That same "guarantee" does not exist
-for the byte-compiled code, therefore, the cheetah software on Debian is split
-up into the following packages.
-
- cheetah -- source package
- cheetah-common -- manpages, examples, Debian docs
- python-cheetah -- dummy package, depends upon latest pythonX.Y-cheetah
- pythonX.Y-cheetah -- Python version-specific packages, with versioned
- depends upon cheetah-common
-
- where 2.3 <= X.Y <= 2.4
-
-cheetah-common is not a large package, but necessary to reduce documentation
-duplication and complexities. The other options for package creation included
-virtual dependencies, which cannot currently be versioned, and repurposing of
-python-cheetah, which goes against the current Debian proposed Python Policy
-(0.3.7.1).
+
+Cheetah is a developer-centric library, and as such, it is important
+to provide multiple Python version-specific packages. In most cases,
+Python is backwards-compatible for language syntax. That same
+"guarantee" does not exist for the byte-compiled code, therefore, the
+cheetah software on Debian uses python-support to provide byte-compiled
+files for all supported Python versions.
Code Incompatibility between 1.0 and 0.9.16
==============================================
reverted:
--- cheetah-1.0/debian/pythonX.Y-cheetah.postinst.in
+++ cheetah-1.0.orig/debian/pythonX.Y-cheetah.postinst.in
@@ -1,30 +0,0 @@
-#! /bin/sh
-# postinst script for python2.3-cheetah
-#
-# see: dh_installdeb(1)
-
-set -e
-
-case "$1" in
- configure)
- update-alternatives --install /usr/bin/cheetah cheetah \
- /usr/bin/[EMAIL PROTECTED]@ @alt_score@ \
- --slave /usr/bin/cheetah-compile cheetah-compile \
- /usr/bin/[EMAIL PROTECTED]@ || true
- ;;
-
- abort-upgrade|abort-remove|abort-deconfigure)
-
- ;;
-
- *)
- echo "postinst called with unknown argument \`$1'" >&2
- exit 1
- ;;
-esac
-
-#DEBHELPER#
-
-exit 0
-
-
reverted:
--- cheetah-1.0/debian/cheetah-common.manpages
+++ cheetah-1.0.orig/debian/cheetah-common.manpages
@@ -1 +0,0 @@
-debian/cheetah.1
reverted:
--- cheetah-1.0/debian/pythonX.Y-cheetah.links.in
+++ cheetah-1.0.orig/debian/pythonX.Y-cheetah.links.in
@@ -1,2 +0,0 @@
-usr/share/man/man1/cheetah.1.gz usr/share/man/man1/[EMAIL
PROTECTED]@.1.gz
-usr/share/man/man1/cheetah.1.gz usr/share/man/man1/[EMAIL
PROTECTED]@.1.gz
diff -u cheetah-1.0/debian/cheetah.1 cheetah-1.0/debian/cheetah.1
--- cheetah-1.0/debian/cheetah.1
+++ cheetah-1.0/debian/cheetah.1
@@ -18,11 +18,7 @@
.SH NAME
cheetah \- Python template command-line tool
.SH SYNOPSIS
-.B cheetah-python2.3, cheetah-compile-python2.3,
-.br
-.B cheetah-python2.2, cheetah-compile-python2.2,
-.br
-.B cheetah-python2.1, cheetah-compile-python2.1,
+.B cheetah, cheetah-compile
.PP
.B cheetah COMMAND
.RI [ options ] " FILE" ...
only in patch2:
unchanged:
--- cheetah-1.0.orig/debian/links
+++ cheetah-1.0/debian/links
@@ -0,0 +1 @@
+usr/share/man/man1/cheetah.1.gz usr/share/man/man1/cheetah-compile.1.gz
only in patch2:
unchanged:
--- cheetah-1.0.orig/debian/manpages
+++ cheetah-1.0/debian/manpages
@@ -0,0 +1 @@
+debian/cheetah.1
only in patch2:
unchanged:
--- cheetah-1.0.orig/debian/docs
+++ cheetah-1.0/debian/docs
@@ -0,0 +1,2 @@
+debian/NEWS
+debian/README.Debian
only in patch2:
unchanged:
--- cheetah-1.0.orig/debian/pycompat
+++ cheetah-1.0/debian/pycompat
@@ -0,0 +1 @@
+2
only in patch2:
unchanged:
--- cheetah-1.0.orig/debian/pyversions
+++ cheetah-1.0/debian/pyversions
@@ -0,0 +1 @@
+2.3-
only in patch2:
unchanged:
--- cheetah-1.0.orig/debian/patches/01_eggify.patch
+++ cheetah-1.0/debian/patches/01_eggify.patch
@@ -0,0 +1,11 @@
+--- setup.py.old 2006-06-30 17:05:26.000000000 +0200
++++ setup.py 2006-06-30 17:05:38.000000000 +0200
+@@ -6,6 +6,8 @@
+ os.remove('MANIFEST') # to avoid those bloody out-of-date
manifests!!
+ except:
+ pass
++
++from setuptools import setup
+
+ import SetupTools
+ import SetupConfig