[Python-modules-commits] [python-modules] 01/01: Squash merge the git-policy branch.
Barry Warsaw
barry at moszumanska.debian.org
Mon Nov 2 23:03:24 UTC 2015
This is an automated email from the git hooks/post-receive script.
barry pushed a commit to branch master
in repository python-modules.
commit b764f907f4b4b461141736b55c0b07e028f88fec
Author: Barry Warsaw <barry at python.org>
Date: Mon Nov 2 17:02:46 2015 -0600
Squash merge the git-policy branch.
Squashed commit of the following:
commit d852b638784df37f88e9aa8fa7c2a77888b0ae75
Author: Barry Warsaw <barry at python.org>
Date: Mon Nov 2 16:47:55 2015 -0600
clean and rename
commit 4538919ae628ed954e2b69395f01f0d793f7a1c4
Author: Barry Warsaw <barry at python.org>
Date: Mon Nov 2 17:43:13 2015 -0500
* GOML
* Add a super dumb Makefile for lawn curmudgeons.
commit 2251cf21f079ad70ea5c70cc28fe2ae3fedddcc0
Merge: 975d2ab cd8029c
Author: Barry Warsaw <barry at python.org>
Date: Mon Nov 2 17:27:21 2015 -0500
Merge branch 'git-policy' of git+ssh://git.debian.org/git/python-modules/tools/python-modules into git-policy
commit 975d2abe32ca1a35be1c4ba6f3ea522773bce160
Author: Barry Warsaw <barry at python.org>
Date: Thu Oct 22 19:34:19 2015 -0400
Another gender neutrality.
commit 3b2ca203c26891adc801b3fca05e2a8bbde367f3
Author: Barry Warsaw <barry at python.org>
Date: Wed Oct 21 09:48:02 2015 -0400
Rephrase the pristine-tar/tarball requirement.
Avoid mention of gbp buildpackage.
commit f46f3fb9b97c3687310f1f2966da1ac66a3cfe47
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 20:52:22 2015 -0400
A little better phrasing, and fix a typo.
commit a8381d895c7d22a7434e23a7fd364a18ce7956a2
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 20:05:22 2015 -0400
Fix links.
commit bd514873f1a5bb7426b4adac2c76e1431a28bb72
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 16:49:30 2015 -0400
Fill out the basics of the git policy requirements.
commit a7f842281542e1791aab2d6b8725966803922c7f
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 10:11:26 2015 -0400
Updates based on Piotr's suggestions.
commit 8eaeca5ed985fa0d147ac1ace92f5c3d6b70ea04
Author: Barry Warsaw <barry at python.org>
Date: Mon Oct 19 12:46:25 2015 -0400
Another PMPT -> DPMT change.
commit 46fc19cb3f000e1f20d3414a979f1e61992017ab
Author: Barry Warsaw <barry at python.org>
Date: Mon Oct 19 12:44:54 2015 -0400
* Updated policy to describe the use of git.
* Remove all mention of subversion/svn.
* Add myself to Author list.
* PMPT -> DPMT
commit cd8029cf90f5175b5a9e9c0058d19f01cff268f0
Author: Barry Warsaw <barry at python.org>
Date: Thu Oct 22 19:34:19 2015 -0400
Another gender neutrality.
commit 1dc3bc3f735eb3ee50f831ee83c8892ed3904215
Author: Barry Warsaw <barry at python.org>
Date: Wed Oct 21 09:48:02 2015 -0400
Rephrase the pristine-tar/tarball requirement.
Avoid mention of gbp buildpackage.
commit d7ddd704f11d97a6619774606e76d9acbfedcc05
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 20:52:22 2015 -0400
A little better phrasing, and fix a typo.
commit 90c40371f26e25d8e0bdb6acfe588d5e1e6fd957
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 20:05:22 2015 -0400
Fix links.
commit 36f285a6fac46840d3cb1ac4b292572cb1af5ced
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 16:49:30 2015 -0400
Fill out the basics of the git policy requirements.
commit f3549252cfa2d85d9e5cbb1d856dbab5d11ff382
Author: Barry Warsaw <barry at python.org>
Date: Tue Oct 20 10:11:26 2015 -0400
Updates based on Piotr's suggestions.
commit b337361eed2a2e855d7fc04750cae633e7a0dd45
Author: Barry Warsaw <barry at python.org>
Date: Mon Oct 19 12:46:25 2015 -0400
Another PMPT -> DPMT change.
commit d1566c66a9aabed93e0722022b793c2007a60ebc
Author: Barry Warsaw <barry at python.org>
Date: Mon Oct 19 12:44:54 2015 -0400
* Updated policy to describe the use of git.
* Remove all mention of subversion/svn.
* Add myself to Author list.
* PMPT -> DPMT
---
Makefile | 10 ++++
policy.rst | 178 +++++++++++++++++++++++++++++++++++++------------------------
2 files changed, 118 insertions(+), 70 deletions(-)
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..3113a36
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,10 @@
+%.html: %.rst
+ rst2html $< > $@
+
+html: policy.html
+
+install: html
+ scp policy.* alioth.debian.org:/home/groups/python-modules/htdocs
+
+clean:
+ rm -f *.html
diff --git a/policy.rst b/policy.rst
index c09f03a..cb73f00 100644
--- a/policy.rst
+++ b/policy.rst
@@ -1,39 +1,44 @@
-========================================
- Python Modules Packaging Team - Policy
-========================================
+=====================================
+ Debian Python Modules Team - Policy
+=====================================
-:Author: Gustavo Franco <stratus at debian.org>, Raphaël Hertzog <hertzog at debian.org>
+:Author: Gustavo Franco <stratus at debian.org>, Raphaël Hertzog <hertzog at debian.org>, Barry Warsaw <barry at debian.org>
:License: GNU GPL v2 or later
:Introduction:
- Python Modules Packaging Team aims to improve the python modules situation
- in Debian, by packaging available modules that may be useful and providing
- a central location for packages maintained by a team, hence improving
- responsiveness, integration and standardization.
-
- PMPT or just python-modules is hosted at alioth.debian.org, the Debian
- GForge installation. We currently have a SVN repository and a mailing list
- whose email address can be used in the Maintainer field on co-maintained
+ The Debian Python Modules Team (DPMT) aims to improve the Python modules
+ situation in Debian, by packaging available modules that may be useful and
+ providing a central location for packages maintained by a team, hence
+ improving responsiveness, integration, and standardization.
+
+ The DPMT is hosted at alioth.debian.org, the Debian GForge installation. We
+ currently have a git repository and a mailing list whose email address can
+ be used in the ``Maintainer`` or ``Uploaders`` fields on co-maintained
packages.
For more information send a message to: debian-python at lists.debian.org
.. contents::
-----------------
+
Joining the team
-----------------
+================
-The team is open to any python-related package maintainer. To be added on
-the team, please send your request on debian-python at lists.debian.org
-indicate why you want to join the team: maintain your current packages
-within the team, help maintain some specific packages, etc.
-Don't forget to indicate your Alioth login !
+The team is open to any Python-related package maintainer. To be added to
+the team, please send your request to debian-python at lists.debian.org. Include
+the following in your request:
-Any Debian developer who wishes to integrate his packages in the team can do so
-without requesting access (as the repository is writable by all DD). If one
+* Why you want to join the team: e.g. maintain your current packages within
+ the team, help maintain some specific packages, etc.
+* Your Alioth login.
+* A statement that you have read
+ https://python-modules.alioth.debian.org/policy.html and that you accept it.
+
+Any Debian developer who wishes to integrate their packages in the team can do
+so without requesting access (as the repository is writable by all DD). If one
wants to be more involved in the team, we still recommend requesting_ access
-so that he appears in the public member list displayed on Alioth's project page.
+so that they appear in the public member list displayed on Alioth's project
+page.
The team accepts all contributors and is not restricted to Debian developers.
Several Debian developers of the team will gladly sponsor packages of non-DD
@@ -43,91 +48,124 @@ discussion list or on #debian-python IRC channel (OFTC network).
All team members should of course follow the main discussion list:
debian-python at lists.debian.org
---------------
+
Maintainership
---------------
+==============
A package maintained within the team should have the name of the team either
-in the Maintainer field or in the Uploaders field.
+in the ``Maintainer`` field or in the ``Uploaders`` field.
Maintainer: Debian Python Modules Team <python-modules-team at lists.alioth.debian.org>
This enables the team to have an overview of its packages on the DDPO_website_.
-* Team in Maintainers is a strong statement that fully collaborative
- maintenance is preferred. Anyone can commit to the vcs and upload as
- needed. A courtesy email to Uploaders can be nice but not required.
+* Team in ``Maintainers`` is a strong statement that fully collaborative
+ maintenance is preferred. Anyone can commit to the git repository and upload
+ as needed. A courtesy email to ``Uploaders`` can be nice but not required.
-* Team in Uploaders is a weak statement of collaboration. Help in maintaining
- the package is appreciated, commits to vcs are freely welcomed, but before
- uploading, please contact the Maintainer for the green light.
+* Team in ``Uploaders`` is a weak statement of collaboration. Help in
+ maintaining the package is appreciated, commits to the git repository are
+ freely welcomed, but before uploading, please contact the ``Maintainer`` for
+ the green light.
Team members who have broad interest should subscribe to the mailing list
python-modules-team at lists.alioth.debian.org whereas members who are only
interested in some packages should use the Package Tracking System to
follow the packages.
----------------------
-Subversion Procedures
----------------------
-We're using a Subversion repository to maintain all the packages, then if you're not
-already using it you will need to install svn-buildpackage.
+Git Procedures
+==============
+
+As of October 9, 2015, the DPMT uses git as the version control system for all
+packages, and git-dpm as the patch management regime.
+
+Git repositories live on Alioth under the url
+``git+ssh://git.debian.org/git/python-modules/packages/<src-pkg-name>.git``
+To access any source package's repository, use ``gbp clone`` on the above url,
+substituting *src-pkg-name* for the source package name of the package in
+question.
+
+DPMT git repos are **source-full**, meaning they contain both the upstream
+source and the ``debian/`` directory.
+
+DPMT requires a pristine-tar branch, and only upstream tarballs can be used to
+advance the upstream branch. Complete upstream git history should be avoided
+in the upstream branch.
+
+Deviations from this policy are strongly discouraged. When you must (not want
+to) deviate, you MUST include a ``debian/README.source`` file explaining the
+rationale for the deviation and the details of working with the package's git
+repo.
-*The repository layout:*
-metainfo/
- Ignore this directory (reserved for future usage).
+Tools
+-----
-packages/
- The source packages are here.
+Do *not* create ``quilt`` patches directly. Instead, use ``git-dpm
+checkout-patched`` to enter a patch branch, edit the files, commit them, and
+then use ``git-dpm update-patches`` to switch back to the master branch, with
+the commits turned into patches. Use the pseudo header ``Patch-Name`` in the
+commit message to control what the patch file will be named, e.g.::
- package-foo
- branches
- If you or someone wants to play with a package possible breaking the trunk, give it a name and do it here.
- tags
- For each release, a tag. More information below.
- trunk
- That's where the main development happens, it should contain only the debian/ subdirectory part of a package.
+ Patch-Name: fix-the-foo.patch
-www/
- Documents and stuff that will be or are being published online in our website.
+Use ``git-dpm tag`` to tag the repository when you upload a new release of the
+package. See below for the required tag format.
-Hints:
-======
-* To keep your package tree clean as pointed out above, always :code:`svn-inject` your packages using :code:`-o` argument.
-* If you svn-inject'ed a package without :code:`-o`, you should remove upstream sources and run :code:`svn propset mergeWithUpstream 1 debian/`.
-* Since you are keeping only debian/ directory in the svn tree, you need to put the 'package-foo'_'version'.orig.tar.gz in tarballs/ a directory above the package, and svn-buildpackage will do the merge for you. More information about this in the svn-buildpackage howto at /usr/share/doc/svn-buildpackage/.
-* After upload, tag the latest revision running :code:`svn-buildpackage --svn-tag-only` into 'package-foo' directory.
-* You can revert the changelog changes after tagging, running :code:`svn revert debian/changelog`.
-* If you're a pbuilder user, you can invoke it using :code:`svn-buildpackage --svn-builder pdebuild <args>`.
+Branch names
+------------
-For more information on how to maintain packages within the repository with svn-buildpackage:
-`http://pkg-perl.alioth.debian.org/subversion.html <https://web.archive.org/web/20141027193341/http://pkg-perl.alioth.debian.org/subversion.html>`_
+Currently, we require the following branch names in the git repo:
-Please note that python-modules URLs are different than pkg-perl ones:
+* master - The Debianized upstream source directory. This contains both the
+ upstream source and a ``debian/`` packaging directory.
+* pristine-tar - Contains the standard ``pristine-tar`` deltas.
+* upstream - The un-Debianized upstream source. This is what you get when you
+ unpack the upstream tarball.
-* svn+ssh://login@svn.debian.org/svn/python-modules/packages/
-* svn://svn.debian.org/python-modules/packages/
-* http://anonscm.debian.org/viewvc/python-modules/
+In some cases you may need to have additional branches, such as if you have
+deltas for downstream distributions (e.g. Ubuntu) or need to maintain multiple
+versions for security releases in previous versions of Debian. In those
+cases, follow the `DEP-14 <http://dep.debian.net/deps/dep14/>`__ guidelines,
+and document them in ``debian/README.source``.
+
+
+Tag format
+----------
+
+Use the following ``git-dpm`` tag formats for the three branches named above.
+These lines at the *end* of the ``debian/.git-dpm`` file will ensure the
+correct tag format for the repository.
+
+ debianTag="debian/%e%v"
+ patchedTag="patches/%e%v"
+ upstreamTag="upstream/%e%u"
+
+
+More information
+----------------
+
+Additional information for working with DPMT git repositories, creating new
+repositories, common workflows, and helpful hints, can be found on the
+`Debian wiki <https://wiki.debian.org/Python/GitPackaging>`__
+page.
-Moreover, python-modules still use the default layout: don't pass :code:`-l 2` to :code:`svn-inject`.
------------------
Quality Assurance
------------------
+=================
The goal of the team is to maintain all packages as best as possible.
Thus every member is encouraged to do general QA work on all the
packages: fix bugs, test packages, improve them to use the latest python
packaging tools, etc.
--------
+
License
--------
+=======
-Copyright (c) 2005-2015 Python Modules Packaging Team. All rights reserved.
+Copyright (c) 2005-2015 Debian Python Modules Team. All rights reserved.
This document is free software; you may redistribute it and/or modify
it under the same terms as GNU GPL v2 or later.
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/tools/python-modules.git
More information about the Python-modules-commits
mailing list