Differences between revisions 1 and 264 (spanning 263 versions)
Revision 1 as of 2008-01-25 13:32:36
Size: 1055
Editor: ?GregorHerrmann
Comment: first draft
Revision 264 as of 2014-08-24 03:15:20
Size: 12940
Editor: ?GregorHerrmann
Comment: add gobby "link"
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:

##||<tablestyle="width: 100%;" style="border: 0px hidden">~-[:DebianWiki/EditorGuide#translation:Translation(s)]: none-~||<style="text-align: right;border: 0px hidden"> (!) [:/Discussion:Discussion]||
##||
Line 5: Line 4:

## If your page gets really long, uncomment this Table of Contents 
[[TableOfContents(2)]]
## If your page gets really long, uncomment this Table of Contents
<<TableOfContents(2)>>
Line 10: Line 8:
This page collects ideas for tasks within the [:Teams/DebianPerlGroup:DebianPerlGroup]. These tasks can be worked on at DebCamp or might be tackled by volunteers "at home".
Line 12: Line 9:
== Packages ==
List of tasks that need to be performed on all/many of our packages.
This page collects ideas for tasks within the [[Teams/DebianPerlGroup]]. These tasks can be worked on at DebCamp or might be tackled by volunteers "at home".
Line 15: Line 11:
 * dpkg-shlibdeps: warnings about linking to unused libs It should have an up to date list of open tasks, please remove completed tasks; for documentation please add links to the History section below (instead of adding them in between the tasks here).
Line 17: Line 13:
== Policy ==
List of
issues that affect of work mode and need discussion.
== Policy / issues for discussion (DebConf BoF) ==
Line 20: Line 15:
 * build systems ("one debian/rules fits them all"?)
 * patch systems (quilt vs. just using a RCS)
 * RCS (svn vs. git)
 * Automatic package tests (DEP-8)
   * https://lists.debian.org/debian-perl/2013/12/msg00064.html has some ideas.
 * Finding and integrating new members: Do we need to do more/something different?
   * [[DebianMed/MoM|Mentoring of the Month]] might provide ideas.

== Release-critical bugs ==

 * http://bugs.debian.org/cgi-bin/pkgreport.cgi?maint=pkg-perl-maintainers%40lists.alioth.debian.org;include=tags%3Awheezy;severity=serious;severity=grave;severity=critical;exclude=tags%3Awheezy-ignore

=== Leaf package with RC Bugs ===

Status from Jan 2014

Ping upstream means tell them we are going to remove it from Debian unstable in 3 weeks if no action
New forwarded reports should wait 3 months until the next step

||Package||popcon||bug||notes||next steps||
||libscalar-number-perl||107||DebianBug:723563, DebianBug:708839|| || ||
||libhtml-wikiconverter-moinmoin-perl||100||DebianBug:720018||Maybe downgrade-worthy (random failure only in test suite?)||Check for downgrade||
||||||||||'''popcon-based cutoff point (n=50)'''||
||libnet-dri-perl||10||DebianBug:710954||Upstream engaged?|| ||
||librdf-helper-perl||9||DebianBug:710983||Still failing even with patch proposed||Send update to upstream bug||
||libdevel-bt-perl||4||DebianBug:721421|| ||Ping on 6th June||


== Transitions ==

 * perl 5.18 transition: for Jessie, fix [[http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=712615|blocking bugs]], and [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=perl-5.18-transition;users=debian-perl@lists.debian.org|other bugs]], or [[Perl518TransitionBugs|remove]] packages
 * perl 5.20 transition: fix [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=753529|blocking bugs]] and [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=perl-5.20-transition;users=debian-perl@lists.debian.org|other bugs]]
 * perl multiarch transition: [[https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=perl-inc-multiarch;users=debian-perl@lists.debian.org|bugs]]

== Packages/tools ==

List of tasks that need to be performed on all/many of our packages; or maintenance tools ...

 * Finish uploading packages where the version in the archive doesn't have the group as the maintainer (i.e. adopted packages etc.):
   * build the list of such packages: compare the packages in Git with Sources.gz and check if any of the packages in our repo still has a version in the archive which has the old maintainer [[http://lists.debian.org/debian-perl/2012/07/msg00015.html]]
   * subscribe our -maintainers ML to the PTS of these packages so that we get their bug reports [done]
   * after Wheezy is released: upload these packages, eventually
     * remaining packages, with this and other TODO items: google-apps.
 * bundle packages: just do it, and see what happens (notes: [[http://packages.qa.debian.org/p/pkg-components.html|pkg-components]], [[http://bugs.debian.org/606411|ftp-master clarification]])
 * QA: cast to pointer from integer of different size: file bugs/fix (http://lists.debian.org/debian-perl/2012/02/msg00029.html, https://qa.debian.org/bls/bytag/I-pointer-cast-size-mismatch.html)
 * Package an awesome Moo development environment, push to remove software that use the (deprecated) Mouse or Any::Moose towards moving to Moo, and remove Mouse and Any::Moose in Jessie.
 * Sort out the future of DateTime::TimeZone respectively its successors. (work in progress, ''intri'').
 * Unify our ''debian/watch'' files, esp. all the variants how ''uversionmangle'' is used.
 * Switch repackaging framework from repack.{stub,local,sh} to uscan's ''Files-Excluded''.
 * Integrating upstream git repos into our workflow / finishing tools in pkg-perl-tools; missing: integration into ''mr'' and ''dpt co''.
 * Enable hardening flags for remaining arch:any packages (cf. gobby.debian.org -> Teams -> Perl -> LHF-201*)
 * Change remaining ''/usr/lib/perl5'' occurences (lintian-overrides, doc-base files, ...).

=== PET ===

(not exclusively a pkg-perl topic but still)

We more or less decided to focus on PET, among our tools that need love, during the DebConf12-DebConf13 year.

To be done:

 * list (and possibly implement -- in Python) features we need in PET:
   * track patches
   * show all versions in archive / all suites
   * others?

Resources:

 * Alioth project: https://alioth.debian.org/projects/pet/
 * pet-devel mailing-list: https://alioth.debian.org/mail/?group_id=100210
 * PET project's repo: `git+ssh://git.debian.org/git/pet/pet3.git`
 * web: http://pet.debian.net/pkg-perl/pet.cgi
 * bugs: http://bugs.debian.org/pet.debian.net

=== dh-make-perl ===

 * find a co-maintainer for dh-make-perl
 * continue breaking it into isolated modules
 * improve POD coverage
 * [[http://anonscm.debian.org/gitweb/?p=pkg-perl/packages/dh-make-perl.git;a=blob_plain;f=TODO|TODO]]
 * [[http://bugs.debian.org/src:dh-make-perl|bugs]]
 * combine dh-make-perl's "refresh" with cme's update functionality

=== packagecheck{,.pl} ===

 * Rewrite packagecheck (in Perl, modular, maybe not only for pkg-perl)
   * ''packagecheck provides some function of "cme check dpkg". It may be better to improve dpkg model taking into account our needs'' (dod)

=== lintian profile ===

 * a lintian vendor profile exists now in pkg-perl-tools; list of things we could want to add there:
   * uploading d/changelog with unresolved TODO / WAITS-FOR / IGNORE-VERSION / etc.
   * boilerplate README
   * metacpan URLs
   * watchfile regexp
   * unversioned ''perl'' in Depends:
   * not using cgit in Vcs-Browser:
   * cf. [[https://anonscm.debian.org/cgit/pkg-perl/packages/pkg-perl-tools.git/tree/TODO|TODO]] in pkg-perl-tools source package

=== forward-patch/-bug ===

 * [[http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob;f=forward-patch|forward-patch]] uses email but [[https://metacpan.org/module/RT::Client::REST::Ticket|RT::Client::REST::Ticket]]'s docs sound like it should be able to handle attachments.
 * It would be nice if [[http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob;f=forward-patch|forward-patch]]/[[http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob;f=forward-bug|forward-bug]] could also handle updates of existing tickets (and not only creation of new ones).
 * Upstream authors are increasingly using github issues instead of CPAN RT; maybe [[http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob;f=forward-patch|forward-patch]]/[[http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob;f=forward-bug|forward-bug]] could optionally use it (via [[https://metacpan.org/pod/Net::GitHub::V3::Issues|Net::GitHub::V3::Issues]] or [[https://metacpan.org/pod/Pithub::Issues|Pithub::Issues]]maybe). (WIP, ''dam'')

== Recurring tasks ==

 * Check [[http://pkg-perl.alioth.debian.org/qa/wnpp.html|RFP/ITP packages]]
 * Yearly cleanup (remove packages from Git that were injected but never finished for upload)
   * retrieve the list is taken from [[http://pet.debian.net/pkg-perl/pet.cgi|PET]] ("New packages" section)
   * send the list to our mailing-list, with some deadline ([[https://lists.debian.org/debian-perl/2012/07/msg00001.html|example email]])
   * wait until the deadline expires
   * delete the Git repositories using the [[http://anonscm.debian.org/gitweb/?p=pkg-perl/meta.git;a=blob;f=remove-repository|remove-repository script]]
     [Last cleanup started: August 2014, gregoa]
 * Check packages not uploaded for more than 6 years using the [[http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob;f=sort_unreleased_packages.pl|sort_unreleased_packages.pl script]]. (6 years because there's a quite sharp edge. The cleanup in December 2013 found about 30 packages not uploaded for > 6 years, but 120 packages last uploaded between 5 and 6 years.)
   [Last check: December 2013, XTaran]
 * Run [[http://packages.debian.org/duck|duck]] in all git repositories and check the errors it found. Do not rely to much on the [[http://duck.debian.net/|duck website]] as it only checks the state of packages in the archive, and many issues are already fixed or were only added in the git repositories.
   [Last check: March 2014, XTaran]
 * Next alioth project member ping: send a "ping" ("Do you still want to be a member?") to those who haven't done something for $time, and remove those who reply with "No" or who don't reply. In order to get a more realistic picture, and maybe also to remove unnecessary permissions. Ansgar has run such a "ping" once (only for non-DD group members, IIRC), and this is a reminder to do it again.
 * Run 'dpt get-ubuntu-packages | sort -u | dpt lp-mass-subscribe' (scripts located in scripts/ directory in pkg-perl git repository) to subscribe our Launchpad team, [[https://launchpad.net/~pkg-perl-maintainers|~pkg-perl-maintainers]] to all bugs concerning packages we maintain. This script must be run by a Launchpad team administrator.
   [Last run: 2014-08-21, gregoa]

=== When a new Perl hits unstable ===

 * Change some (build) dependencies ("libFOO-perl (>= x.y) | perl (>= 5.1x)"
 * Fix all the [[http://lintian.debian.org/tags/versioned-dependency-satisfied-by-perl.html|"versioned-dependency-satisfied-by-perl" Lintian warnings]].
 * Then fix all the [[http://lintian.debian.org/tags/package-superseded-by-perl.html|"package-superseded-by-perl.html" Lintian warnings]].
 * ''cme fix dpkg -from control -filter Depends'', with ''mass-commit'' in our script repo

=== When oldstable is archived ===

 * Update (build) dependencies. E.g. once Lenny is archived, there's no need for "perl (>= 5.10.1) | libFOO-perl ()" anymore, or to depend on versions of packages that are already satisfied in current stable.
 * ''cme fix dpkg -from control -filter Depends'', with ''mass-commit'' in our script repo
 * Review/remove Breaks/Replaces against package versions that are not even in oldstable. (Not (yet?) in ''cme fix''.)

== Background tasks ==

Things that would be nice to do, often repetitive. Can be done globally, or every time you work on a specific package.

 * Forward all (non Debian specific) patches upstream and add the CPAN RT ids to the patch headers [tools: forward-bug/forward-patch exists (ghedo++), patchedit exists (jozef++)]
 * Fix common [[http://lintian.debian.org/maintainer/pkg-perl-maintainers@lists.alioth.debian.org.html|lintian-errors]] repo-wide (e.g. errors from pod2man, missing patch descriptions, ...) - some stuff fixed, other is more easily fixed by "dh-make-perl --refresh" on the next upgrade ...

== Nice to have, some day ==

 * Write team-specific questions for NM templates ([[http://lists.debian.org/debian-devel/2011/03/msg00416.html|Enrico's mail]]).
   Random ideas: fix a Perl bug, update a Perl package to the group standards, adopt a package into the Perl group.
 * [[FrontDesk/Tasks|NM tasks for teams]] -- found in an even older mail from Enrico :)

== Subpages ==

 * [[Teams/DebianPerlGroup/OpenTasks/Applications]]
 * [[Teams/DebianPerlGroup/OpenTasks/ChangelogHeaders]]
 * [[Teams/DebianPerlGroup/OpenTasks/Transitions/Perl4CoreLibs]]

== Links ==

 * [[http://fedoraproject.org/wiki/Packaging/Perl|Fedora Perl Packaging Policy]]
 * [[http://www.dagolden.com/index.php/2098/the-annotated-lancaster-consensus/|The Lancaster Consensus]]

== History ==

 * [[https://lists.debian.org/debian-perl/2013/08/msg00057.html|Minutes]] from the meeting at DebConf in August 2013.
 * [[http://lists.debian.org/debian-perl/2012/07/msg00086.html|Minutes]] from the meeting at DebConf in July 2012.
 * [[http://lists.debian.org/debian-perl/2011/07/msg00122.html|Minutes]] from the meeting at DebConf in July 2011.
 * [[http://lists.debian.org/debian-perl/2010/08/msg00038.html|Minutes]] from the meeting at DebConf in August 2010.
 * [[http://lists.debian.org/debian-perl/2009/07/msg00104.html|Minutes]] from the meeting at DebConf in July 2009.
 * [[http://lists.debian.org/debian-perl/2009/07/msg00037.html|Minutes]] from the meeting at DebCamp in July 2009.
 * [[http://lists.debian.org/debian-perl/2008/08/msg00029.html|Minutes]] from the meeting at DebCamp in August 2008.
Line 26: Line 183:
##See also:  ##See also:

Debian Perl Group - Open tasks

This page collects ideas for tasks within the Teams/DebianPerlGroup. These tasks can be worked on at DebCamp or might be tackled by volunteers "at home".

It should have an up to date list of open tasks, please remove completed tasks; for documentation please add links to the History section below (instead of adding them in between the tasks here).

Policy / issues for discussion (DebConf BoF)

Release-critical bugs

Leaf package with RC Bugs

Status from Jan 2014

Ping upstream means tell them we are going to remove it from Debian unstable in 3 weeks if no action New forwarded reports should wait 3 months until the next step

Package

popcon

bug

notes

next steps

libscalar-number-perl

107

723563, 708839

libhtml-wikiconverter-moinmoin-perl

100

720018

Maybe downgrade-worthy (random failure only in test suite?)

Check for downgrade

popcon-based cutoff point (n=50)

libnet-dri-perl

10

710954

Upstream engaged?

librdf-helper-perl

9

710983

Still failing even with patch proposed

Send update to upstream bug

libdevel-bt-perl

4

721421

Ping on 6th June

Transitions

Packages/tools

List of tasks that need to be performed on all/many of our packages; or maintenance tools ...

  • Finish uploading packages where the version in the archive doesn't have the group as the maintainer (i.e. adopted packages etc.):
    • build the list of such packages: compare the packages in Git with Sources.gz and check if any of the packages in our repo still has a version in the archive which has the old maintainer http://lists.debian.org/debian-perl/2012/07/msg00015.html

    • subscribe our -maintainers ML to the PTS of these packages so that we get their bug reports [done]
    • after Wheezy is released: upload these packages, eventually
      • remaining packages, with this and other TODO items: google-apps.
  • bundle packages: just do it, and see what happens (notes: pkg-components, ftp-master clarification)

  • QA: cast to pointer from integer of different size: file bugs/fix (http://lists.debian.org/debian-perl/2012/02/msg00029.html, https://qa.debian.org/bls/bytag/I-pointer-cast-size-mismatch.html)

  • Package an awesome Moo development environment, push to remove software that use the (deprecated) Mouse or Any::Moose towards moving to Moo, and remove Mouse and Any::Moose in Jessie.
  • Sort out the future of DateTime::?TimeZone respectively its successors. (work in progress, intri).

  • Unify our debian/watch files, esp. all the variants how uversionmangle is used.

  • Switch repackaging framework from repack.{stub,local,sh} to uscan's Files-Excluded.

  • Integrating upstream git repos into our workflow / finishing tools in pkg-perl-tools; missing: integration into mr and dpt co.

  • Enable hardening flags for remaining arch:any packages (cf. gobby.debian.org -> Teams -> Perl -> LHF-201*)

  • Change remaining /usr/lib/perl5 occurences (lintian-overrides, doc-base files, ...).

PET

(not exclusively a pkg-perl topic but still)

We more or less decided to focus on PET, among our tools that need love, during the DebConf12-DebConf13 year.

To be done:

  • list (and possibly implement -- in Python) features we need in PET:
    • track patches
    • show all versions in archive / all suites
    • others?

Resources:

dh-make-perl

  • find a co-maintainer for dh-make-perl
  • continue breaking it into isolated modules
  • improve POD coverage
  • TODO

  • bugs

  • combine dh-make-perl's "refresh" with cme's update functionality

packagecheck{,.pl}

  • Rewrite packagecheck (in Perl, modular, maybe not only for pkg-perl)
    • packagecheck provides some function of "cme check dpkg". It may be better to improve dpkg model taking into account our needs (dod)

lintian profile

  • a lintian vendor profile exists now in pkg-perl-tools; list of things we could want to add there:
    • uploading d/changelog with unresolved TODO / WAITS-FOR / IGNORE-VERSION / etc.
    • boilerplate README
    • metacpan URLs
    • watchfile regexp
    • unversioned perl in Depends:

    • not using cgit in Vcs-Browser:
    • cf. TODO in pkg-perl-tools source package

forward-patch/-bug

Recurring tasks

  • Check RFP/ITP packages

  • Yearly cleanup (remove packages from Git that were injected but never finished for upload)
    • retrieve the list is taken from PET ("New packages" section)

    • send the list to our mailing-list, with some deadline (example email)

    • wait until the deadline expires
    • delete the Git repositories using the remove-repository script

      • [Last cleanup started: August 2014, gregoa]
  • Check packages not uploaded for more than 6 years using the sort_unreleased_packages.pl script. (6 years because there's a quite sharp edge. The cleanup in December 2013 found about 30 packages not uploaded for > 6 years, but 120 packages last uploaded between 5 and 6 years.)

    • [Last check: December 2013, XTaran]
  • Run duck in all git repositories and check the errors it found. Do not rely to much on the duck website as it only checks the state of packages in the archive, and many issues are already fixed or were only added in the git repositories.

    • [Last check: March 2014, XTaran]
  • Next alioth project member ping: send a "ping" ("Do you still want to be a member?") to those who haven't done something for $time, and remove those who reply with "No" or who don't reply. In order to get a more realistic picture, and maybe also to remove unnecessary permissions. Ansgar has run such a "ping" once (only for non-DD group members, IIRC), and this is a reminder to do it again.
  • Run 'dpt get-ubuntu-packages | sort -u | dpt lp-mass-subscribe' (scripts located in scripts/ directory in pkg-perl git repository) to subscribe our Launchpad team, ~pkg-perl-maintainers to all bugs concerning packages we maintain. This script must be run by a Launchpad team administrator.

    • [Last run: 2014-08-21, gregoa]

When a new Perl hits unstable

When oldstable is archived

  • Update (build) dependencies. E.g. once Lenny is archived, there's no need for "perl (>= 5.10.1) | libFOO-perl ()" anymore, or to depend on versions of packages that are already satisfied in current stable.

  • cme fix dpkg -from control -filter Depends, with mass-commit in our script repo

  • Review/remove Breaks/Replaces against package versions that are not even in oldstable. (Not (yet?) in cme fix.)

Background tasks

Things that would be nice to do, often repetitive. Can be done globally, or every time you work on a specific package.

  • Forward all (non Debian specific) patches upstream and add the CPAN RT ids to the patch headers [tools: forward-bug/forward-patch exists (ghedo++), patchedit exists (jozef++)]
  • Fix common lintian-errors repo-wide (e.g. errors from pod2man, missing patch descriptions, ...) - some stuff fixed, other is more easily fixed by "dh-make-perl --refresh" on the next upgrade ...

Nice to have, some day

  • Write team-specific questions for NM templates (Enrico's mail).

    • Random ideas: fix a Perl bug, update a Perl package to the group standards, adopt a package into the Perl group.
  • NM tasks for teams -- found in an even older mail from Enrico :)

Subpages

History