Differences between revisions 34 and 74 (spanning 40 versions)
Revision 34 as of 2014-03-20 09:46:58
Size: 3746
Comment:
Revision 74 as of 2020-04-20 04:49:50
Size: 7217
Editor: PaulWise
Comment: cleanups
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= contributors.debian.org website development = <<TableOfContents>>
Line 3: Line 3:
See http://contributors.debian.org/ for the instance currently deployed. == contributors.debian.org website development ==
Line 5: Line 5:
See also http://www.enricozini.org/2013/debian/debian-contributors-right-after-debconf/ for some background. See https://contributors.debian.org/ for the instance currently deployed. See also https://www.enricozini.org/blog/2013/debian/debian-contributors-right-after-debconf/ for some background. The site is written with [[https://www.djangoproject.com/|Django]].


=== website TODO list ===
Line 8: 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 [[https://bugs.debian.org/nm.debian.org|BTS]].
Line 9: 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]].  * Bug:795961 [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.
 * Bug:733115 [HTML templates] Explain more of what is going on, and how to improve the results, in the personal page.
 * [Django] Find out why the Django Admin interface does not work and make it work ('''patch sent''', just needed activating)
 * Bug:795964 Simplify the devel deployment procedure (docker, or a script that automates things a bit) ([[https://gitlab.com/sim6/debian_contributors/compare/master...docker|sim6 is working on a Dockerfile]])
 * Bug:795967 [New django view] allow data source admins to view all the unclaimed identifiers that contributed to their data source
 * Bug:795969 [New django view] Identifier.get_absolute_url` with a page listing details about an identifier, like all known contributions.
 * Bug:795971 [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
 * Bug:795973 [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. https://docs.djangoproject.com/en/dev/topics/signing/ may help.
 * 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.
Line 11: Line 25:
== TODO list == == Data sources ==
Line 13: Line 27:
Add a nullable display_name field to the User model, and allow users to edit it.
Change User.get_full_name to return display_name as a first choice, falling back to email if it is None.
----
During maintenance, scan names from GECOS / LDAP and add them to missing first/last names in User.
----
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.
----
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.
----
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.
----
`Identifier.get_absolute_url` with a page listing details about an identifier, like all known contributions.
----
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.
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).
Line 29: Line 32:
== Desired data sources == 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.
Line 31: Line 36:
 * [[http://lists.debian.org/debian-dak/2013/11/msg00006.html|dak]] (done)
 * Debconf volunteers: ask for historical penta logs, so to have all subset of debconf volunteers
 * nm-site-devel (scanning git log, or the mailing list, should do)
 * debconf subtitles (done: just waiting for implementation of contributors.d.o to show people with a non @debian.org address)
 * www.debian.org contributors: scanning CVS repo commits
 * Perl Team: they have a pretty advanced activity tracking system for the team, it can be adapted (ask them)
 * L10N:
    * po-debconf, website: via l10n bot (bubulle already replied sending link to the bot's source, need coding people to look at it)
    * manuals, doc: scanning svn repo commits
    * installer: ?
    * wiki: ?
    * ddtss: ask maintainers of the service (waiting for reply)
 * Publicity: scanning svn repo commits
 * Debian Blends: they have an activity tracker, it can be adapted (ask them)
 * BTS: second-hand via UDD?
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 ===
Line 47: Line 39:
{{{#!wiki tabular
|| '''Contribution type / Team''' || '''Status''' || '''by'''|| '''Comment''' ||
|| http://ftp.debian.org || done || Ganneff, ansgar, mhy || - ||
|| https://dsa.debian.org/ || done || zobel || - ||
|| Debian Security Tracker || done || FedericoCeratto || - ||
|| 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 || ||
|| https://www.debian.org/ || proof of concept || enrico || can be done scanning git 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 || done || tincho || https://contributors.debian.org/source/Perl%20packaging%20group ||
|| https://wiki.debian.org/ || done || sledge, enrico || ||
|| Debian Publicity team || done || madamezou || uses svndirs via dc-tool ||
|| [[https://bugs.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 and now is running https://contributors.debian.org/source/bugs.debian.org ||
|| 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''', [[https://salsa.debian.org/l10n-team/dl10n|here's the repo containing it]])||
|| l10n (manuals, documentation) || volunteer needed || || scanning git repo logs for the debian-doc group ([[https://salsa.debian.org/ddp-team/|here the repo]]) ||
|| l10n ([[https://ddtp.debian.org/|ddtp]]) || volunteer needed || || maintainers of the web interface ([[https://ddtp.debian.org/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: https://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 50: Line 64:
 * [[http://anonscm.debian.org/gitweb/?p=nm/dc.git;a=blob;f=README.md|Getting started with contributors.debian.org development]]
 * [[http://bugs.debian.org/nm.debian.org|bugs are tracked in the Debian BTS under nm.debian.org, with an appropriate tag in the subject]]
 * [[http://lists.alioth.debian.org/pipermail/newmaint-site/Week-of-Mon-20131028/000032.html|contributors.debian.org milestones]]
 * [[https://salsa.debian.org/nm-team/contributors.debian.org/blob/master/README.md|Getting started with contributors.debian.org development]]
 * [[https://bugs.debian.org/nm.debian.org|bugs are tracked in the Debian BTS under nm.debian.org, with an appropriate tag in the subject]]
 * [[https://lists.alioth.debian.org/pipermail/newmaint-site/Week-of-Mon-20131028/000032.html|contributors.debian.org milestones]]

contributors.debian.org website development

See https://contributors.debian.org/ for the instance currently deployed. See also https://www.enricozini.org/blog/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.

  • 795961 [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.

  • 733115 [HTML templates] Explain more of what is going on, and how to improve the results, in the personal page.

  • [Django] Find out why the Django Admin interface does not work and make it work (patch sent, just needed activating)

  • 795964 Simplify the devel deployment procedure (docker, or a script that automates things a bit) (sim6 is working on a Dockerfile)

  • 795967 [New django view] allow data source admins to view all the unclaimed identifiers that contributed to their data source

  • 795969 [New django view] Identifier.get_absolute_url` with a page listing details about an identifier, like all known contributions.

  • 795971 [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
  • 795973 [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. https://docs.djangoproject.com/en/dev/topics/signing/ may help.

  • 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.

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

-

https://dsa.debian.org/

done

zobel

-

Debian Security Tracker

done

FedericoCeratto

-

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

https://www.debian.org/

proof of concept

enrico

can be done scanning git 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

done

tincho

https://contributors.debian.org/source/Perl%20packaging%20group

https://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 and now is running https://contributors.debian.org/source/bugs.debian.org

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 git 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: https://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