Differences between revisions 2 and 64 (spanning 62 versions)
Revision 2 as of 2013-09-15 15:44:18
Size: 1332
Editor: EnricoZini
Comment: More verbose
Revision 64 as of 2015-08-17 16:47:21
Size: 7473
Editor: ?LynoureBraakman
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<TableOfContents>>
Line 3: Line 5:
== TODO list == See http://contributors.debian.org/ for the instance currently deployed. See also http://www.enricozini.org/2013/debian/debian-contributors-right-after-debconf/ for some background. The site is written with [[https://www.djangoproject.com/|Django]].


=== website TODO list ===
Line 6: Line 11:
Generic wishlists, things that require large changes in the site, or things that need a lot of discussion before being implemented, are tracked on the [[http://bugs.debian.org/nm.debian.org|BTS]].
Line 7: Line 13:
Generic wishlists, things that require large changes in the site, or things that need a lot of discussion before being implemented, are tracked on the [[http://bugs.debian.org/nm.debian.org|BTS]] instead.  * [HTML skills only] The layout of the editing forms /sources/update/NAME can still be improved; errors should be laid out so they stand out, spacing is unnecessary.
 * [Django] Find out why the Django Admin interface does not work and make it work ('''patch sent''', just needed activating)
 * Simplify the devel deployment procedure (docker, or a script that automates things a bit) (sim6 is working on a Dockerfile)
 * [New django view] Identifier.get_absolute_url` with a page listing details about an identifier, like all known contributions.
 * [New django view] Show a page with a list of all people with a debian.org account who have not contributed in the last X years (for the MIA team)
 * [Housekeeping script] Merge foo@alioth and foo@debian accounts
 * [orestis] [Two views] Add an interface for people logged in to claim an email addresses, with a url being sent to that email address to confirm the claim. This needs a new model for pending claims, the code to send the mail and a view to accept the confirmations.
  * HMAC challenges to make stateless confirmation tokens
https://docs.djangoproject.com/en/dev/topics/signing/
 * Also allow to unclaim an identifier (example use case: I want to split my online identity in two: work-Enrico and personal-Enrico, and I want to disassociate an email from personal-Enrico to associate it to work-Enrico)
 * Add a new Source.data_since field to Source, !DateField(null=True), which when present means that there are contributors from before that date, but data is only available since that date. When showing contributions, if c.since<=data_since then show "Since records began" instead of a date.
 * [safanaj] ['''PULL REQ''' [[http://anonscm.debian.org/cgit/users/safanaj-guest/dc.git/patch/?id=0842edb6672331d13c4f0e9f9e8e32bbe268933c|patch]]] Autodetect compression type from uploaded file name, if available. This allows to just use {{{curl -F data=@file.json.gz}}} without needing {{{-F data_compression=gzip}}}. Look into {{{contributors/importer.py}}} {{{ValidatingDict.get_data}}}: f is a Django UploadedFile object with a {{{.name}}} attribute.
Line 9: Line 26:
=== TODO list items === == Data sources ==
Line 11: Line 28:
----
Create an interface to add new data sources and edit existing ones.
For each source, we also need to edit the various contribution types.
----
Create a POST interface to submit data from a data source. See contributors/importer for the code used to import the data that gets submitted.
The POSTed data needs to contain the auth_token defined in the matching Source record.
We want to map all kind of Debian contributions: to do this, we'll need different data sources to mine (repositories, mailing lists, bug tracking system, log of webservices, etc.).
For each contribution, we only need:
 *''$contributor_identifier'': can be a name, a nickname, a mail address
 *''$date'': ideally, a time range is better ($start-date and $end-date for each contributions provided by the same person).

Adding a new data source is quite easy, and does not always require coding skills.<<BR>>
You have to be a Debian Developer, though: if you are not one but you have a ready-to-cook recipe for a new data source, please contact [[https://lists.alioth.debian.org/mailman/listinfo/newmaint-site|the development mailing list]] and ask for help.<<BR>>
If you are a Debian Developer, check [[DebianContributors|this page]] to find out how to add a new data source.

Is your team/contribution already in the following list? If not, add it and try to work on it (or at least provide a plan on how to gather those data).
=== List of identified data sources ===

{{{#!wiki tabular
|| '''Contribution type / Team''' || '''Status''' || '''by'''|| '''Comment''' ||
|| http://ftp.debian.org || done || Ganneff, ansgar, mhy || - ||
|| http://dsa.debian.org/ || done || zobel || - ||
|| Debian Security Tracker || done || FedericoCeratto || - ||
|| http://bzr.debian.org/ || done || asb || - ||
|| Collab Maint || done || enrico || - ||
|| debconf subtitle team || done || madamezou || needs implementation server side to also show people without a @debian.org address ||
|| nm-site-devel || done || enrico || scanning git logs, or the mailing list, should do ||
|| spam review || done || formorer, madamezou || ||
|| http://svn.debian.org/ || done || tincho || ||
|| http://www.debian.org/ || proof of concept || enrico || can be done scanning CVS repo logs ||
|| debconf || volunteer needed || || just ask historical penta logs for all subset of volunteers and process them ('''will need coding skills''') ||
|| Debian Perl team || volunteer needed || || could be done adapting [[http://pet.debian.net/pkg-perl/pet.cgi|PET]] ('''will need coding skills''') ||
|| http://wiki.debian.org/ || done || sledge, enrico || ||
|| Debian Publicity team || done || madamezou || uses svndirs via dc-tool ||
|| [[http://bts.debian.org|BTS]] || volunteer needed || || maybe second-hand data via UDD? ('''will need coding skills'''). There is a first approach using UDD https://gitlab.com/debiants/udd2dc (runned until 2015-08-14), enrico is working in a new version that reads BTS logs ||
|| Debian Blends || volunteer needed || || there is an activity tracker for the Blends that can be adapted ('''will need coding skills''') ||
|| l10n (po-debconf, website) || wip || madamezou, laura || the l10n bot can be adapted ('''will need coding skills''', [[http://anonscm.debian.org/gitweb/?p=debian-l10n/dl10n.git;a=summary|here's the repo containing it]])||
|| l10n (manuals, documentation) || volunteer needed || || scanning SVN repo logs for the debian-doc group ([[http://anonscm.debian.org/viewvc/ddp/manuals/trunk/|here the repo]]) ||
|| l10n ([[http://ddtp.debian.net/|ddtp]]) || volunteer needed || || maintainers of the web interface ([[http://ddtp.debian.net/ddtss/index.cgi/xx|ddtss]]) should have logs of submissions, it should be possible to adapt them ('''will need coding skills''') ||
|| l10n (installer) || volunteer needed || || ask debian-boot (may be possible to use the d-i repo, but then we'd have also other contributors to d-i, not only translators. Also, sometime the person translating and the one committing are not the same ||
|| voters || volunteer needed || || Contact points: http://www.debian.org/intro/organization as project secretary. This will be one step in having contributors.debian.org replace the current database used for MIA tracking. ||
}}}
 
Line 21: Line 69:
 * [[http://anonscm.debian.org/gitweb/?p=dc/dc.git;a=blob;f=README.md|Getting started with contributors.debian.org development]] (still to be written, it's basically just syncdb and migrate now, there is no test data atm)  * [[http://anonscm.debian.org/gitweb/?p=nm/dc.git;a=blob;f=README.md|Getting started with contributors.debian.org development]]
Line 23: Line 71:
 * [[http://lists.alioth.debian.org/pipermail/newmaint-site/Week-of-Mon-20131028/000032.html|contributors.debian.org milestones]]
 * Data model: [[attachment:nm-dc.png]] (graphed with {{{sqlt-graph}}} from {{{manage.py sqlall contributors}}}
 * How to create a new data source: DebianContributors

contributors.debian.org website development

See http://contributors.debian.org/ for the instance currently deployed. See also http://www.enricozini.org/2013/debian/debian-contributors-right-after-debconf/ for some background. The site is written with Django.

website TODO list

This website TODO list contains only those items that can clearly be worked on right now, and is used as coordination between the people working on the site. Generic wishlists, things that require large changes in the site, or things that need a lot of discussion before being implemented, are tracked on the BTS.

  • [HTML skills only] The layout of the editing forms /sources/update/NAME can still be improved; errors should be laid out so they stand out, spacing is unnecessary.
  • [Django] Find out why the Django Admin interface does not work and make it work (patch sent, just needed activating)

  • Simplify the devel deployment procedure (docker, or a script that automates things a bit) (sim6 is working on a Dockerfile)
  • [New django view] Identifier.get_absolute_url` with a page listing details about an identifier, like all known contributions.
  • [New django view] Show a page with a list of all people with a debian.org account who have not contributed in the last X years (for the MIA team)
  • [Housekeeping script] Merge foo@alioth and foo@debian accounts
  • [orestis] [Two views] Add an interface for people logged in to claim an email addresses, with a url being sent to that email address to confirm the claim. This needs a new model for pending claims, the code to send the mail and a view to accept the confirmations.
    • HMAC challenges to make stateless confirmation tokens

https://docs.djangoproject.com/en/dev/topics/signing/

  • Also allow to unclaim an identifier (example use case: I want to split my online identity in two: work-Enrico and personal-Enrico, and I want to disassociate an email from personal-Enrico to associate it to work-Enrico)
  • Add a new Source.data_since field to Source, DateField(null=True), which when present means that there are contributors from before that date, but data is only available since that date. When showing contributions, if c.since<=data_since then show "Since records began" instead of a date.

  • [safanaj] [PULL REQ patch] Autodetect compression type from uploaded file name, if available. This allows to just use curl -F data=@file.json.gz without needing -F data_compression=gzip. Look into contributors/importer.py ValidatingDict.get_data: f is a Django ?UploadedFile object with a .name attribute.

Data sources

We want to map all kind of Debian contributions: to do this, we'll need different data sources to mine (repositories, mailing lists, bug tracking system, log of webservices, etc.). For each contribution, we only need:

  • $contributor_identifier: can be a name, a nickname, a mail address

  • $date: ideally, a time range is better ($start-date and $end-date for each contributions provided by the same person).

Adding a new data source is quite easy, and does not always require coding skills.
You have to be a Debian Developer, though: if you are not one but you have a ready-to-cook recipe for a new data source, please contact the development mailing list and ask for help.
If you are a Debian Developer, check this page to find out how to add a new data source.

Is your team/contribution already in the following list? If not, add it and try to work on it (or at least provide a plan on how to gather those data).

List of identified data sources

Contribution type / Team

Status

by

Comment

http://ftp.debian.org

done

Ganneff, ansgar, mhy

-

http://dsa.debian.org/

done

zobel

-

Debian Security Tracker

done

FedericoCeratto

-

http://bzr.debian.org/

done

asb

-

Collab Maint

done

enrico

-

debconf subtitle team

done

madamezou

needs implementation server side to also show people without a @debian.org address

nm-site-devel

done

enrico

scanning git logs, or the mailing list, should do

spam review

done

formorer, madamezou

http://svn.debian.org/

done

tincho

http://www.debian.org/

proof of concept

enrico

can be done scanning CVS repo logs

debconf

volunteer needed

just ask historical penta logs for all subset of volunteers and process them (will need coding skills)

Debian Perl team

volunteer needed

could be done adapting PET (will need coding skills)

http://wiki.debian.org/

done

sledge, enrico

Debian Publicity team

done

madamezou

uses svndirs via dc-tool

BTS

volunteer needed

maybe second-hand data via UDD? (will need coding skills). There is a first approach using UDD https://gitlab.com/debiants/udd2dc (runned until 2015-08-14), enrico is working in a new version that reads BTS logs

Debian Blends

volunteer needed

there is an activity tracker for the Blends that can be adapted (will need coding skills)

l10n (po-debconf, website)

wip

madamezou, laura

the l10n bot can be adapted (will need coding skills, here's the repo containing it)

l10n (manuals, documentation)

volunteer needed

scanning SVN repo logs for the debian-doc group (here the repo)

l10n (ddtp)

volunteer needed

maintainers of the web interface (ddtss) should have logs of submissions, it should be possible to adapt them (will need coding skills)

l10n (installer)

volunteer needed

ask debian-boot (may be possible to use the d-i repo, but then we'd have also other contributors to d-i, not only translators. Also, sometime the person translating and the one committing are not the same

voters

volunteer needed

Contact points: http://www.debian.org/intro/organization as project secretary. This will be one step in having contributors.debian.org replace the current database used for MIA tracking.

Resources