[Python-apps-commits] r920 - in packages/mercurial/trunk/debian (20 files)

vdanjean at users.alioth.debian.org vdanjean at users.alioth.debian.org
Sun Apr 6 22:07:37 UTC 2008


    Date: Sunday, April 6, 2008 @ 22:07:35
  Author: vdanjean
Revision: 920

package cleanup before upload
- remove mercurial-web: cgi scripts must be modified by the user
  so this is not good to install them in /usr/share/cgi-bin
  where they will be overwritten at each upgrade
  (I put them in examples/ again)
- ensure proper upgrade with conflict/replace for mercurial-common
- move all /usr/share stuff in mercurial-common (python files too)
  => this leads to a lintian warning. This is a lintian bug: #473428
- install docs/examples of mercurial-common in /usr/share/doc/mercurial
- manage hgext.rc with ucf
  => extension are enabled only if dependent packages are here
  => update README.Debian with extension dependencies
  => mercurial does not depend on lots of other packages any more

Added:
  packages/mercurial/trunk/debian/hgext.rc.md5sums
  packages/mercurial/trunk/debian/mercurial.postrm
  packages/mercurial/trunk/debian/patches/deb_specific__ElementTree_for_darc.patch
  packages/mercurial/trunk/debian/patches/proposed_upstream__python-module-not-script.patch
  packages/mercurial/trunk/debian/pycompat
Modified:
  packages/mercurial/trunk/debian/README.Debian
  packages/mercurial/trunk/debian/changelog
  packages/mercurial/trunk/debian/control
  packages/mercurial/trunk/debian/mercurial-common.dirs
  packages/mercurial/trunk/debian/mercurial-common.examples
  packages/mercurial/trunk/debian/mercurial-common.install
  packages/mercurial/trunk/debian/mercurial.dirs
  packages/mercurial/trunk/debian/mercurial.install
  packages/mercurial/trunk/debian/mercurial.postinst
  packages/mercurial/trunk/debian/patches/deb_specific__hgk.py.patch
  packages/mercurial/trunk/debian/patches/series
  packages/mercurial/trunk/debian/rules
Deleted:
  packages/mercurial/trunk/debian/mercurial-web.dirs
  packages/mercurial/trunk/debian/mercurial-web.install
  packages/mercurial/trunk/debian/patches/proposed_upstream__fix_man_warnings.patch

Modified: packages/mercurial/trunk/debian/README.Debian
===================================================================
--- packages/mercurial/trunk/debian/README.Debian	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/README.Debian	2008-04-06 22:07:35 UTC (rev 920)
@@ -3,8 +3,8 @@
 
 Table of contents
 * Documentation
-* Extensions provided in this package
-* Other extensions and dependencies
+* Extensions provided in this package and their dependencies
+* Other extensions
 * Emacs support
 * Very old users of mercurial
 
@@ -17,32 +17,27 @@
 Some parts of the Wiki will be added in the package (for people not online)
 as soon as mercurial documentation stabilises enough.
 
-Extensions provided in this package
-***********************************
+Extensions provided in this package and their dependencies
+**********************************************************
 
-I try to add all available upstream extensions in the Debian package.
-Look at sample.hgrc to get a few information about available extensions.
+Look at examples/sample.hgrc to get a few information about available extensions.
 
 Extensions can be enabled system-wide, per-user and/or per repository (see
-hgrc(5) for more information). 
+hgrc(5) for more information).
   By default, this debian package enables extensions that only enable new
 commands (such as 'hgk', 'gpg', ...), but not extensions that modify
 mercurial behaviour (such as 'win32text')
   The system administrator can modify this by editing
 /etc/mercurial/hgrc.d/hgext.rc
+  Some extensions are enabled only the their depending package(s) are
+installed. This auto-detection will not work if these depends are installed
+or removed after mercurial. In this case, run "dpkg-reconfigure mercurial"
+or manually edit /etc/mercurial/hgrc.d/hgext.rc 
 
-Other extensions and dependencies
-*********************************
-
-Dependencies needed for extension are listed as Suggests: as they are not 
-strickly needed to use the core of mercurial. Install them if you 
+Dependencies needed for extension are listed as Suggests: as they are not
+strickly needed to use the core of mercurial. Install them if you
 need them.
 
-'hg serve' command / mercurial-web
----------------------------------
-Export the repository via HTTP.
-Depends: python-openssl
-
 Extension: bugzilla
 -------------------
 Bugzilla integration for mercurial.
@@ -52,27 +47,51 @@
 ------------------
 Foreign SCM converter.
 Depends: git-core | darc | monotone | bzr | subversion
+Depends: python-elementtree (for darc convertion only)
 
 Extension: hgk
 --------------
-add the 'view' command, allows browsing the history of a repository in 
+Add the 'view' command, allows browsing the history of a repository in
 a graphical way.
 Depends:  tk8.4 | wish
 
-'hg serve' command / mercurial-web                                                                             
----------------------------------
-Export the repository via HTTP.
-Depends: python-openssl
+Extension: highlight
+--------------------
+Pretty output for hgweb.
+Depends: python-pygments
 
-hgct                   
-----                   
-add the 'ct' command that is a graphical interface for commiting changes.
+CGI Script: hgweb.cgi
+---------------------
+CGI script to serve one mercurial repository.
+In order to use it, you need to edit it (to set the path to you repository).
+Depends: apache2 | httpd
+
+CGI Script: hgwebdir.cgi
+------------------------
+CGI script to serve several mercurial repositories.
+In order to use it, you need to edit it (to set paths to your repositories).
+Depends: apache2 | httpd
+
+CGI Script: hgwebdir.fcgi
+-------------------------
+Experimental CGI script to serve several mercurial repositories using WSGIServer.
+In order to use it, you need to edit it (to set paths to your repositories).
+Depends: apache2 | httpd, python-flup
+
+
+Other extensions
+****************
+
+hgct
+----
+Add the 'ct' command that is a graphical interface for commiting changes.
 hgct is available in the 'commit-tool' debian package.
 Note: hgct is not developed anymore. Try to switch to qct.
-                       
-qct                    
----                    
-add the 'qct' command that is a graphical interface for commiting changes.                                     
+
+qct
+---
+Add the 'qct' command that is a graphical interface for commiting changes.
+
 qct is available in the 'qct' debian package.
 
 
@@ -97,6 +116,7 @@
 bit of a fallacy in this case: find-file is likely to be run at or shortly
 after boot.
 
+
 Very old users of mercurial
 ***************************
 

Modified: packages/mercurial/trunk/debian/changelog
===================================================================
--- packages/mercurial/trunk/debian/changelog	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/changelog	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,7 +1,18 @@
 mercurial (1.0-1) unstable; urgency=low
 
-  * new upstream version (Closes: #472185, #447094, #443428, #472943,
-    #466006, #454326, #469326, #452385 )
+  * new upstream version
+    Closes several Debian bugs:
+     * "hg convert broken" (Closes: #472185)
+     * "hgmerge: uses non-POSIX syntax `type' in /bin/sh script" (Closes: #447094)
+     * "hgmerge: --help option gives a message that ends strangely" (Closes:
+       #443428)
+     * "mercurial: hg/editor interaction leaves a lot of temp files around"
+       (Closes: #472943)
+     * "mercurial: Mercurial merge with meld needs hint" (Closes: #466006)
+     * "glog: tries to close closed fd" (Closes: #454326)
+     * "mercurial: `hg diff` can break UTF-8 encoding" (Closes: #469326)
+     * "Recording mtime after recording commit message leads to hidden (lost)
+       changes" (Closes: #452385)
     General:
      * greatly improved merge tool configuration, see "hgrc.5.txt" for details
      * improved copy/rename handling in diffs, status, and merge
@@ -64,55 +75,64 @@
      * standard hook to reject text files with CRLF in win32text extension
      * redirect stdout to stderr for ssh and http servers
       
-     [Gerardo Curiel]
-     * Split package to fix lintian warnings:
-       + mercurial -  main package
-       + mercurial-common - Arch-indep bits
-       + mercurial-web - cgi/fcgi scripts
-     * Fix clean target
-     * Dropped patches:
-       patches/proposed_upstream__check_hgmerge_args.patch
-       patches/proposed_upstream__type_is_not_posix.patch
-     * patches/deb_specific__use_sensible-editor.patch:
-       Rediff against mercurial 1.0 
-     * Added patch:
-       patches/proposed_upstream__fix_man_warnings.patch
-     * hgmerge shell script is not provided anymore
-     * contrib/favicon.ico is not provided anymore
-     * Deleted obsolete link_hgit target from debian/rules
-     * Added mergetools.hgrc to the examples
-       directory
-     * Added logo-droplets.svg to /usr/share/mercurial
-     * Added new extensions to the hgext.rc file
-       + hgext.color (not enabled by default)
-       + hgext.highlight (enabled)
-       + hgext.inotify (enabled, Closes: #472583)
-       + hgext.keyword (not enabled by default)
-     * Removed extensions from the hgext.rc file
-       + hgext.hbisect (now provided as a built-in command)
-     * Added new dependency :
-       + python-pygments (needed for hgext/highlight.py)
-       + python-elementtree (was a suggested dependency, but we're shipping
-       the 'convert' extension enabled by default)
+  [Gerardo Curiel]
+  * Split package to fix lintian warnings:
+    + mercurial -  main package
+    + mercurial-common - Arch-indep bits
+  * Fix clean target
+  * Dropped patches:
+    patches/proposed_upstream__check_hgmerge_args.patch
+    patches/proposed_upstream__type_is_not_posix.patch
+  * patches/deb_specific__use_sensible-editor.patch:
+    Rediff against mercurial 1.0 
+  * Added patch:
+    patches/proposed_upstream__fix_man_warnings.patch
+  * hgmerge shell script is not provided anymore
+  * contrib/favicon.ico is not provided anymore
+  * Deleted obsolete link_hgit target from debian/rules
+  * Added mergetools.hgrc to the examples
+    directory
+  * Added logo-droplets.svg to /usr/share/mercurial
+  * Added new extensions to the hgext.rc file
+    + hgext.color (not enabled by default)
+    + hgext.highlight (enabled)
+    + hgext.inotify (enabled, Closes: #472583)
+    + hgext.keyword (not enabled by default)
+  * Removed extensions from the hgext.rc file
+    + hgext.hbisect (now provided as a built-in command)
+  * Added new dependency :
+    + python-pygments (needed for hgext/highlight.py)
+    + python-elementtree (was a suggested dependency, but we're shipping
+    the 'convert' extension enabled by default)
 
-     [Vincent Danjean ]
-     * import mercurial in the Python Application Packaging Team project
-     * debian/control:
-       + add PAPT in the Uploaders field
-       + add Vcs-* fields
-       + makes the package binNUM safe
-                     
-     [ Piotr Ożarowski ]
-     * New recommended packages:
-       + python-mysqldb (hgext/bugzilla.py)
-       + python-openssl (hgweb/server.py)
-     * New suggested packages:
-       + python-flup (contrib/hgwebdir.fcgi, Closes: #466731)
-    
-     [ William Pitcock ]
-     * patches/deb_specific__use_sensible-editor.patch:
-       +Rediff against 1.0 branch.
-              
+  [Vincent Danjean ]
+  * import mercurial in the Python Application Packaging Team project
+  * debian/control:
+    + add PAPT in the Uploaders field
+    + add Vcs-* fields
+    + add conflicts/replaces fields to ensure proper upgrade for
+      mercurial-common
+  * cleanup debian/ files
+    + remove unneeded debian/*.{dirs} files 
+  * move examples/ in usr/share/doc/mercurial (in the mercurial-common
+    package)
+  * manage hgext.rc with ucf. Enabling some extensions only if their
+    dependencies are present
+  * put all usr/share/python-support/* in mercurial-common instead of
+    mercurial. This trigger a lintian warning but this is an error (see
+    #473428)
+                  
+  [ Piotr Ożarowski ]
+  * New recommended packages:
+    + python-mysqldb (hgext/bugzilla.py)
+    + python-openssl (hgweb/server.py)
+  * New suggested packages:
+    + python-flup (contrib/hgwebdir.fcgi, Closes: #466731)
+ 
+  [ William Pitcock ]
+  * patches/deb_specific__use_sensible-editor.patch:
+    +Rediff against 1.0 branch.
+
  -- Gerardo Curiel <gcuriel at debian.org.ve>  Thu, 31 Mar 2008 15:06:09 +0100
 
 mercurial (0.9.5-3) unstable; urgency=low

Modified: packages/mercurial/trunk/debian/control
===================================================================
--- packages/mercurial/trunk/debian/control	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/control	2008-04-06 22:07:35 UTC (rev 920)
@@ -10,13 +10,19 @@
 Vcs-Svn: svn://svn.debian.org/python-apps/packages/mercurial/trunk
 Vcs-Browser: http://svn.debian.org/wsvn/python-apps/packages/mercurial/trunk/
 
-
 Package: mercurial
 Architecture: any 
-Depends: ${shlibs:Depends}, ${python:Depends}, mercurial-common (= ${binary:Version}),
- python-pygments, python-elementtree
+Depends: ${shlibs:Depends}, ${python:Depends}, ucf,
+ mercurial-common (= ${binary:Version})
 Recommends: kdiff3 | tkdiff | meld 
-Suggests: qct, tk8.4 | wish, vim | emacs, python-mysqldb, mercurial-web
+Suggests: qct, 
+ tk8.4 | wish, 
+ vim | emacs, 
+ python-mysqldb, 
+ mercurial-web,
+ git-core | darc | monotone | bzr | subversion,
+ python-pygments,
+ python-elementtree
 Description: Scalable distributed version control system
  Mercurial is a fast, lightweight Source Control Management system designed
  for efficient handling of very large distributed projects.
@@ -31,12 +37,16 @@
   * Easy-to-use command-line interface
   * Integrated stand-alone web interface
   * Small Python codebase
+ .
+ This package contain architecture dependent files.
 
-
 Package: mercurial-common
 Architecture: all 
-Depends: ${misc:Depends}
+Depends: ${misc:Depends}, ${python:Depends}
 Recommends: mercurial
+Conflicts: mercurial (<< 1.0)
+Replaces: mercurial (<< 1.0)
+Suggests: tk8.4 | wish, 
 Description: Scalable distributed version control system (Common files)
  Mercurial is a fast, lightweight Source Control Management system designed
  for efficient handling of very large distributed projects.
@@ -52,26 +62,4 @@
   * Integrated stand-alone web interface
   * Small Python codebase
  .
- 
-Package: mercurial-web
-Architecture: all 
-Depends:  mercurial (>= ${binary:Version}), mercurial-common (= ${binary:Version}),
- python (>= 2.4), python (<< 2.6), apache2 | httpd, python-flup
-Recommends: python-openssl
-Description: Scalable distributed version control system (Web interface)
- Mercurial is a fast, lightweight Source Control Management system designed
- for efficient handling of very large distributed projects.
- . 
- Its features include:
-  * O(1) delta-compressed file storage and retrieval scheme
-  * Complete cross-indexing of files and changesets for efficient exploration
-    of project history
-  * Robust SHA1-based integrity checking and append-only storage model
-  * Decentralized development model with arbitrary merging between trees
-  * High-speed HTTP-based network merge protocol
-  * Easy-to-use command-line interface
-  * Integrated stand-alone web interface
-  * Small Python codebase
-
-
-
+ This package contain architecture independent files.

Added: packages/mercurial/trunk/debian/hgext.rc.md5sums
===================================================================
--- packages/mercurial/trunk/debian/hgext.rc.md5sums	                        (rev 0)
+++ packages/mercurial/trunk/debian/hgext.rc.md5sums	2008-04-06 22:07:35 UTC (rev 920)
@@ -0,0 +1,2 @@
+4c808ced6b7ddc2e3c1514703bc238b9  0.9.5-3
+80086669df3007b5b17d7d12efe03775  sarge

Modified: packages/mercurial/trunk/debian/mercurial-common.dirs
===================================================================
--- packages/mercurial/trunk/debian/mercurial-common.dirs	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial-common.dirs	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,5 +1 @@
-usr/share
-usr/share/mercurial
-usr/share/emacs
-usr/share/emacs/site-lisp
-
+usr/share/doc/mercurial

Modified: packages/mercurial/trunk/debian/mercurial-common.examples
===================================================================
--- packages/mercurial/trunk/debian/mercurial-common.examples	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial-common.examples	2008-04-06 22:07:35 UTC (rev 920)
@@ -11,4 +11,7 @@
 contrib/tcsh_completion
 contrib/vim
 contrib/zsh_completion
+contrib/hgwebdir.fcgi
+hgweb.cgi
+hgwebdir.cgi
 

Modified: packages/mercurial/trunk/debian/mercurial-common.install
===================================================================
--- packages/mercurial/trunk/debian/mercurial-common.install	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial-common.install	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,5 +1,8 @@
 debian/tmp/usr/lib/python2.5/site-packages/mercurial/templates usr/share/mercurial
+debian/tmp/usr/lib
+
 contrib/mercurial.el usr/share/emacs/site-lisp
 contrib/mq.el usr/share/emacs/site-lisp
+
 contrib/logo-droplets.svg usr/share/mercurial
-
+contrib/hgk usr/share/mercurial/

Deleted: packages/mercurial/trunk/debian/mercurial-web.dirs
===================================================================
--- packages/mercurial/trunk/debian/mercurial-web.dirs	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial-web.dirs	2008-04-06 22:07:35 UTC (rev 920)
@@ -1 +0,0 @@
-usr/lib/cgi-bin

Deleted: packages/mercurial/trunk/debian/mercurial-web.install
===================================================================
--- packages/mercurial/trunk/debian/mercurial-web.install	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial-web.install	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,4 +0,0 @@
-contrib/hgwebdir.fcgi usr/lib/cgi-bin/
-hgweb.cgi usr/lib/cgi-bin/
-hgwebdir.cgi usr/lib/cgi-bin/
-

Modified: packages/mercurial/trunk/debian/mercurial.dirs
===================================================================
--- packages/mercurial/trunk/debian/mercurial.dirs	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial.dirs	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,7 +1,2 @@
-usr/bin
-usr/share/mercurial
-etc/
 etc/bash_completion.d
-etc/mercurial
 etc/mercurial/hgrc.d
-

Modified: packages/mercurial/trunk/debian/mercurial.install
===================================================================
--- packages/mercurial/trunk/debian/mercurial.install	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial.install	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,5 +1,5 @@
 debian/tmp/usr/bin
 debian/tmp/usr/lib
-debian/hgext.rc  etc/mercurial/hgrc.d/
-contrib/bash_completion etc/bash_completion.d/mercurial
-contrib/hgk usr/share/mercurial/
+
+debian/hgext.rc  usr/share/mercurial/
+debian/hgext.rc.md5sums  usr/share/mercurial/

Modified: packages/mercurial/trunk/debian/mercurial.postinst
===================================================================
--- packages/mercurial/trunk/debian/mercurial.postinst	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/mercurial.postinst	2008-04-06 22:07:35 UTC (rev 920)
@@ -17,7 +17,34 @@
 # for details, see http://www.debian.org/doc/debian-policy/ or
 # the debian-policy package
 
+check_ext() {
+    local file="$1"
+    local ext="$2"
+    local dep="$3"
+    local enable="true"
 
+    case "$dep" in
+    wish)
+	which wish > /dev/null || enable=false
+	reason="no 'wish' script found [can be found in 'tk8.4' package]"
+	;;
+    python-*)
+        test -d /usr/share/doc/$dep || enable=false
+	reason="package '$dep' is not installed"
+	;;
+    *)
+    	echo "Internal error"
+	exit 1
+	;;
+    esac
+    if [ "$enable" = true ]; then
+	echo "Enabling $ext extension"
+    	sed -i -e "s/^# \(hgext[.]$ext =\)/\1/" "$file"
+    else
+	echo "Disabling $ext extension ($reason)"
+    fi
+}
+
 case "$1" in
     configure)
         # Fix for old packages not managing pyc files
@@ -27,6 +54,24 @@
 	        rm -rf "$d"
 	    fi
 	done
+
+	for conffile in hgext.rc; do
+	  # Tell ucf that the file in /usr/share/mercurial is the latest
+	  # maintainer version (but we rewrite it to enable extension based
+	  # on guess on weather other packages are here or not), and let it
+	  # handle how to manage the real configuration file in
+	  # /etc/mercurial/hgrc.d.
+	  TMPFILE=`mktemp`
+	  chmod 644 "$TMPFILE"
+	  cp /usr/share/mercurial/$conffile "$TMPFILE"
+	  check_ext "$TMPFILE" hgk wish
+	  check_ext "$TMPFILE" highlight python-pygments
+	  ucf --sum-file /usr/share/mercurial/$conffile.md5sums --three-way \
+		"$TMPFILE" /etc/mercurial/hgrc.d/$conffile
+	  ucfr mercurial /etc/hgrc.d/$conffile
+	  rm -f "$TMPFILE"
+	done
+
     ;;
 
     abort-upgrade|abort-remove|abort-deconfigure)

Added: packages/mercurial/trunk/debian/mercurial.postrm
===================================================================
--- packages/mercurial/trunk/debian/mercurial.postrm	                        (rev 0)
+++ packages/mercurial/trunk/debian/mercurial.postrm	2008-04-06 22:07:35 UTC (rev 920)
@@ -0,0 +1,60 @@
+#!/bin/sh
+# postrm script for mercurial
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postrm> `remove'
+#        * <postrm> `purge'
+#        * <old-postrm> `upgrade' <new-version>
+#        * <new-postrm> `failed-upgrade' <old-version>
+#        * <new-postrm> `abort-install'
+#        * <new-postrm> `abort-install' <old-version>
+#        * <new-postrm> `abort-upgrade' <old-version>
+#        * <disappearer's-postrm> `disappear' <overwriter>
+#          <overwriter-version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    purge)
+	for conffile in hgext.rc; do
+	    # we mimic dpkg as closely as possible, so we remove configuration
+	    # files with dpkg backup extensions too:
+	    ### Some of the following is from Tore Anderson:
+	    for ext in '~' '%' .bak .dpkg-tmp .dpkg-new .dpkg-old .dpkg-dist .ucf-old .ucf-new .ucf-dist;  do
+	            rm -f /etc/mercurial/hgrc.d/$conffile$ext
+	    done
+	    # remove the configuration file itself
+	    rm -f /etc/mercurial/hgrc.d/$conffile
+	    # and finally clear it out from the ucf database
+	    if which ucf >/dev/null; then
+	            ucf --purge /etc/mercurial/hgrc.d/$conffile
+	    fi
+	    if which ucfr >/dev/null; then
+	            ucfr --purge mercurial /etc/mercurial/hgrc.d/$conffile
+	    fi
+        done
+
+    ;;
+
+    remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+    ;;
+
+    *)
+        echo "postrm 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
+
+

Added: packages/mercurial/trunk/debian/patches/deb_specific__ElementTree_for_darc.patch
===================================================================
--- packages/mercurial/trunk/debian/patches/deb_specific__ElementTree_for_darc.patch	                        (rev 0)
+++ packages/mercurial/trunk/debian/patches/deb_specific__ElementTree_for_darc.patch	2008-04-06 22:07:35 UTC (rev 920)
@@ -0,0 +1,13 @@
+Index: mercurial-git/hgext/convert/darcs.py
+===================================================================
+--- mercurial-git.orig/hgext/convert/darcs.py	2008-04-06 22:05:27.000000000 +0200
++++ mercurial-git/hgext/convert/darcs.py	2008-04-06 22:11:01.000000000 +0200
+@@ -30,7 +30,7 @@
+         checktool('darcs')
+ 
+         if ElementTree is None:
+-            raise util.Abort(_("Python ElementTree module is not available"))
++            raise util.Abort(_("Python ElementTree module is not available. Try installing the python-elementtree Debian package to convert from darc"))
+ 
+         if not os.path.exists(os.path.join(path, '_darcs', 'inventory')):
+             raise NoRepo("%s does not look like a darcs repo" % path)

Modified: packages/mercurial/trunk/debian/patches/deb_specific__hgk.py.patch
===================================================================
--- packages/mercurial/trunk/debian/patches/deb_specific__hgk.py.patch	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/patches/deb_specific__hgk.py.patch	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,8 +1,8 @@
-Index: mercurial-0.9.5/hgext/hgk.py
+Index: mercurial-git/hgext/hgk.py
 ===================================================================
---- mercurial-0.9.5.orig/hgext/hgk.py	2007-11-02 11:52:50.000000000 +0100
-+++ mercurial-0.9.5/hgext/hgk.py	2008-01-21 21:37:42.000000000 +0100
-@@ -318,7 +318,7 @@
+--- mercurial-git.orig/hgext/hgk.py	2008-04-06 20:08:47.000000000 +0200
++++ mercurial-git/hgext/hgk.py	2008-04-06 20:11:03.000000000 +0200
+@@ -317,7 +317,7 @@
      "start interactive history viewer"
      os.chdir(repo.root)
      optstr = ' '.join(['--%s %s' % (k, v) for k, v in opts.iteritems() if v])

Deleted: packages/mercurial/trunk/debian/patches/proposed_upstream__fix_man_warnings.patch
===================================================================
--- packages/mercurial/trunk/debian/patches/proposed_upstream__fix_man_warnings.patch	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/patches/proposed_upstream__fix_man_warnings.patch	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,20 +0,0 @@
-Index: mercurial-1.0/doc/hgignore.5.txt
-===================================================================
---- mercurial-1.0.orig/doc/hgignore.5.txt	2008-04-01 03:15:26.000000000 -0430
-+++ mercurial-1.0/doc/hgignore.5.txt	2008-04-01 03:15:45.000000000 -0430
-@@ -64,6 +64,7 @@
- 
-   # use glob syntax.
-   syntax: glob
-+.................................
- 
-   *.elc
-   *.pyc
-@@ -73,6 +74,7 @@
-   # switch to regexp syntax.
-   syntax: regexp
-   ^\.pc/
-+................................
- 
- AUTHOR
- ------

Added: packages/mercurial/trunk/debian/patches/proposed_upstream__python-module-not-script.patch
===================================================================
--- packages/mercurial/trunk/debian/patches/proposed_upstream__python-module-not-script.patch	                        (rev 0)
+++ packages/mercurial/trunk/debian/patches/proposed_upstream__python-module-not-script.patch	2008-04-06 22:07:35 UTC (rev 920)
@@ -0,0 +1,19 @@
+Index: mercurial-git/mercurial/lsprof.py
+===================================================================
+--- mercurial-git.orig/mercurial/lsprof.py	2008-04-06 20:12:23.000000000 +0200
++++ mercurial-git/mercurial/lsprof.py	2008-04-06 20:15:46.000000000 +0200
+@@ -1,5 +1,3 @@
+-#! /usr/bin/env python
+-
+ import sys
+ from _lsprof import Profiler, profiler_entry
+ 
+Index: mercurial-git/mercurial/simplemerge.py
+===================================================================
+--- mercurial-git.orig/mercurial/simplemerge.py	2008-04-06 20:12:00.000000000 +0200
++++ mercurial-git/mercurial/simplemerge.py	2008-04-06 20:12:02.000000000 +0200
+@@ -1,4 +1,3 @@
+-#!/usr/bin/env python
+ # Copyright (C) 2004, 2005 Canonical Ltd
+ #
+ # This program is free software; you can redistribute it and/or modify

Modified: packages/mercurial/trunk/debian/patches/series
===================================================================
--- packages/mercurial/trunk/debian/patches/series	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/patches/series	2008-04-06 22:07:35 UTC (rev 920)
@@ -1,6 +1,7 @@
-proposed_upstream__fix_man_warnings.patch
+proposed_upstream__python-module-not-script.patch
 proposed_upstream__extension_syntax.patch
 deb_specific__FAQ_subst.patch
 deb_specific__use_sensible-editor.patch
 deb_specific__hgk.py.patch
 deb_specific__bash_completion_global_option_already_set.patch
+deb_specific__ElementTree_for_darc.patch

Added: packages/mercurial/trunk/debian/pycompat
===================================================================
--- packages/mercurial/trunk/debian/pycompat	                        (rev 0)
+++ packages/mercurial/trunk/debian/pycompat	2008-04-06 22:07:35 UTC (rev 920)
@@ -0,0 +1 @@
+2

Modified: packages/mercurial/trunk/debian/rules
===================================================================
--- packages/mercurial/trunk/debian/rules	2008-04-06 22:07:29 UTC (rev 919)
+++ packages/mercurial/trunk/debian/rules	2008-04-06 22:07:35 UTC (rev 920)
@@ -4,32 +4,48 @@
 DEB_PYTHON_SYSTEM=pysupport
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/rules/patchsys-quilt.mk
-include /usr/share/cdbs/1/class/python-distutils.mk
 
+# These part must be run between dh_install and dh_pysupport
+# So, they must be defined BEFORE including python-distutils.mk
+binary-install/mercurial::
+	pysupport-movemodules debian/mercurial
+	# remove arch-independent python stuff
+	rm -rf $(CURDIR)/debian/mercurial/usr/share/python-support
 
-binary-install/mercurial-web::
-	chmod 0755 $(CURDIR)/debian/mercurial-web/usr/lib/cgi-bin/*
+binary-install/mercurial-common::
+	pysupport-movemodules debian/mercurial-common
+	# remove arch-dependent python stuff
+	rm -rf $(CURDIR)/debian/mercurial-common/usr/lib/python-support
+	rmdir --ignore-fail-on-non-empty $(CURDIR)/debian/mercurial-common/usr/lib
 
+include /usr/share/cdbs/1/class/python-distutils.mk
 
+
 binary-install/mercurial::
+	# Install bash autocompletion.
+	install -m 644 \
+		contrib/bash_completion \
+		$(CURDIR)/debian/mercurial/etc/bash_completion.d/mercurial
+	
 	# Install system-wide conffiles
 	echo "# system-wide mercurial configuration file" \
 		>  $(CURDIR)/debian/mercurial/etc/mercurial/hgrc
 	echo "# See hgrc(5) for more information" \
 		>>  $(CURDIR)/debian/mercurial/etc/mercurial/hgrc
 
-	rm -rf $(CURDIR)/debian/mercurial/usr/share/python-support/mercurial/mercurial/templates
-
-	ln -sf ../../../mercurial/templates \
-		$(CURDIR)/debian/mercurial/usr/share/python-support/mercurial/mercurial/templates
-
-	chmod 0755  $(CURDIR)/debian/mercurial/usr/share/python-support/mercurial/mercurial/lsprof.py \
-		$(CURDIR)/debian/mercurial/usr/share/python-support/mercurial/mercurial/simplemerge.py
-
-
 build/mercurial-common::
 	$(MAKE) -C doc man
+	# workaround a bug in asciidoc that generates incorrect manpages
+	sed -i 's,^\([\\][.]hg/hgrc\),\\\&\1,' doc/hg.1
+	sed -i 's,^\([\\][.][*][\\][.]swp\),\\\&\1,' doc/hgignore.5
 
+binary-install/mercurial-common::
+	rm -rf $(CURDIR)/debian/mercurial-common/usr/share/python-support/mercurial-common/mercurial/templates
+	ln -sf ../../../mercurial/templates \
+		$(CURDIR)/debian/mercurial-common/usr/share/python-support/mercurial-common/mercurial/templates
+	
+	mv $(CURDIR)/debian/mercurial-common/usr/share/doc/mercurial-common/examples \
+		$(CURDIR)/debian/mercurial-common/usr/share/doc/mercurial
 
 clean::
 	$(MAKE) clean




More information about the Python-apps-commits mailing list